Pb de couleur dans un dataGridview

CGSI3 Messages postés 416 Date d'inscription vendredi 22 février 2008 Statut Membre Dernière intervention 7 janvier 2018 - 10 janv. 2012 à 11:04
CGSI3 Messages postés 416 Date d'inscription vendredi 22 février 2008 Statut Membre Dernière intervention 7 janvier 2018 - 12 janv. 2012 à 21:06
Bonjour a tous,
En Vb.Net 2008, j'ai besoin d'afficher un Datagridview dans un mode étendue qui prend tout mon ecran.
Cependant j'ai besoin de colorier les lignes et colonnes sur ce Datagridview pour reperer les entetes de colonnes et de lignes.
Je peux le faire pour chaque ligne avec la méthode

For Cpt =0 to DataGridview1.RowCount - 1
   If Cpt = DataGridview1.CurrentCellAddress.Y Then
      .Rows( Cpt ).DefaultCellStyle.BackColor = Color.red
   else
      .Rows( Cpt ).DefaultCellStyle.BackColor = DataGridview1.DefaultCellStyle.BackColor
   End If
next

3 réponses

CGSI3 Messages postés 416 Date d'inscription vendredi 22 février 2008 Statut Membre Dernière intervention 7 janvier 2018 1
10 janv. 2012 à 11:34
(Désolé j'édite en 2 fois; Pb de bouton)

En utilisant la méthode suivante pour colorier les colonnes
les colorations persistes sur les cases modifiées et ne se recolorie pas par défauts.

.Rows(Cpt).Cells(DataGridview1.CurrentCellAddress.X).Style.BackColor = Color.Red

Peut on supprimer juste la mise en forme du datagridview ?
Peut on aussi tout simplement colorier une colonne + simplement?
Dois je recolorier toutes les cases visibles a chaque fois avec cette dernière méthode pour contourner ce Pb?
Merci CGSI3
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 137
11 janv. 2012 à 17:20
Bonjour,
As-tu regardé sur ce site:

http://plasserre.developpez.com/cours/vb-net/?page=ui-winforms5#LVIII-Q-2

Il parle de ceci:

La couleur des entêtes ne marche pas? Il suffit de mettre la propriété EnableHeadersVisualStyles à False pour que le datagridview prenne en compte le style appliqué par code.


@+Le Pivert
0
CGSI3 Messages postés 416 Date d'inscription vendredi 22 février 2008 Statut Membre Dernière intervention 7 janvier 2018 1
12 janv. 2012 à 21:06
Bonjour Ami Pivert,
Merci pour ce lien, il m'est fort utile pour aborder une partie de code que je voulais aborder par la suite.
Ma question etait plus de savoir comment on colorie une ligne de cellule.
Si on le fait avec la ligne suivante:

.Rows(Cpt).Cells(DataGridview1.CurrentCellAddress.X).Style.BackColor = Color.Red

La cellule modifié ne prendra pas en compte la fonction suivante qui le fait par défaut.

.Rows( Cpt ).DefaultCellStyle.BackColor = Color.red

J'ai donc résolu de ne pas utiliser cette dernière fonction pour colorier par colonne mes cellules. Il faut que je les colorie toutes ... ce qui ralenti beaucoup mon appli.

Mais j essai de limiter mes modifications aux cellules a afficher.

Merci pour ton aide.
CGSI3
0
Rejoignez-nous