2009-03-27 3 views
1

J'ai une application qui utilise DataGridView dans deux emplacements différents. Dans un endroit, le DataGridView montre tout bien. Dans l'autre emplacement, chaque fois que le formulaire contenant le DataGridView est initialement chargé, seulement environ la moitié de la partie visible de DataGridView est réellement dessinée; à travers le reste de DataGridView, les graphiques sous-jacents de Windows peuvent être vus; si vous faites défiler le reste des données, vous obtenez une vue agitée de ce qui correspond à la ligne du bas défilant vers le haut à travers chaque rangée défilée. Les seules façons d'obtenir DataGridView pour afficher les valeurs correctes sont soit de sélectionner une cellule, forçant cette cellule particulière à redessiner; ou pour invalider une zone de la fenêtre, faisant redessiner cette zone (ce qu'elle fait correctement).DataGridView ne dessine pas complètement lorsqu'il est affiché

J'ai comparé la façon dont chacune de ces DataGridViews a été configurée: Pour celui qui fonctionne correctement, DataGridView est lié statiquement à un BindingSource, qui est lié statiquement à un DataSet; celui qui a le problème de dessin est lié statiquement à une source de liaison dynamiquement liée à un DataTable lors de la création du formulaire.

Qu'est-ce qui peut provoquer l'affichage incorrect de mon DataGridView?

Répondre

0

Il y a une couleur transparente qui est réservée à laisser le moteur graphique pour dessiner savoir ce qui est derrière quelque chose

Avez-vous changé la forme ou BackColor DataGridView ou propriétés ForeColor? peut-être une collision avec la couleur transparente? Y a-t-il des couleurs changeantes au moment de l'exécution ou du design?

avez-vous essayé de supprimer le datagridview et de le rajouter?

0

Modifier la propriété AutoSizeColumnsMode du DataGridView à Fill.

Questions connexes