Comment remplir 2 colonnes d'une DataGridView avec un seul champ de base de don

[Résolu]
Signaler
Messages postés
18
Date d'inscription
lundi 27 janvier 2003
Statut
Membre
Dernière intervention
23 février 2010
-
Messages postés
195
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
16 février 2016
-
Bonjour,
Je m'explique je veux "binder" une DataGridView avec une base SQL.
J'ai entre autre un champ "sEtat" qui peut prendre 3 états "R", "W" et chaîne vide.

Je veux créer une colonne de cases à cocher qui cochera les checkboxs quand la valeur sera "R" et une deuxième quand la valeur sera "W", si la valeur est rien dans les deux cas il n'y a pas de cochage.
Evidemment, j'aimerai aussi pouvoir faire un update de ce champ quand je coche ou décoche ces 2 colonnes.

Est-ce réalisable, y-a t-il un exemple qque part ?

Ci-dessous mon bout de code : (dgOD est la DataGridView
)
Cela me cré l'erreur "R n'est pas une valeur valide pour CheckState".
Si je cré que "colchkAffiche" c'est bon mais pas les 2 colonnes.

DataGridViewCheckBoxColumn colchkAffiche =
new
DataGridViewCheckBoxColumn();
colchkAffiche.AutoSizeMode =
DataGridViewAutoSizeColumnMode.ColumnHeader;
colchkAffiche.ThreeState =
true;
colchkAffiche.TrueValue =
"R";
colchkAffiche.FalseValue = System.
String.Empty;
colchkAffiche.IndeterminateValue = System.
DBNull.Value;
colchkAffiche.DataPropertyName =
"sEtat";
colchkAffiche.HeaderText =
"Affiche";
colchkAffiche.Name =
"Affiche";
colchkAffiche.ReadOnly =
true;
dgOD.Columns.Add(colchkAffiche);

DataGridViewCheckBoxColumn colchkSaisie =
new
DataGridViewCheckBoxColumn();
colchkSaisie.AutoSizeMode =
DataGridViewAutoSizeColumnMode.ColumnHeader;
colchkSaisie.ThreeState =
true;
colchkSaisie.TrueValue =
"W";
colchkSaisie.FalseValue = System.
String.Empty;
colchkSaisie.IndeterminateValue = System.
DBNull.Value;
colchkSaisie.DataPropertyName =
"sEtat";colchkSaisie.HeaderText "Saisie";colchkSaisie.Name
"Saisie";
colchkSaisie.ReadOnly =
true;
dgOD.Columns.Add(colchkSaisie);

Merci,
Seb.

1 réponse

Messages postés
195
Date d'inscription
dimanche 10 février 2002
Statut
Membre
Dernière intervention
16 février 2016

Simple suggestion mais au niveau de ta requête, tu ne peux pas traiter ce genre de problème ? s'il s'agit d'une PS par exemple renvoie une variable SQL dans ton instruction Select contenant le R ou W R/W "".
Sinon, je regarde si j'ai une autre solution