Récupération valeur booleenne dans gridview [Résolu]

Messages postés
48
Date d'inscription
mardi 7 octobre 2003
Statut
Membre
Dernière intervention
9 décembre 2008
- - Dernière réponse : v.massip
Messages postés
48
Date d'inscription
mardi 7 octobre 2003
Statut
Membre
Dernière intervention
9 décembre 2008
- 27 sept. 2007 à 10:47
Bonjour à tous,

Dans l'application que je suis en train de développer, j'utilise un Gridview pour récupérer des informations dans une base de données SQL Server (2003).

J'arrive bien à me connecter, mettre à jour le gridview en fonction et même à récupérer les informations dudit gridview...

Le problème est que dès que j'arrive sur un champ booleen, impossible de récupérer sa valeur...

J'utilise la propriété suivante : GVW.SelectedRow.Cells(4).Text

Celle-ci fonctionne pour les champs textes et numériques.
Je pensais donc récupérer une valeur de type 'True' ou 'False' pour les booleens mais ce n'est pas le cas. Et je ne trouve pas la bonne propriété pour récupérer cette valeur.

Quelqu'un pourrait-il m'aider ?

Merci d'avance.
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
1137
Date d'inscription
lundi 17 novembre 2003
Statut
Membre
Dernière intervention
23 janvier 2016
17
3
Merci
Salut,
Si le champ de ta base est un bit (bool sql), il suffit de le caster :
Convert.ToBoolean(GVW.SelectedRow.Cells(4).Text);

Pour l'affichage dans le gridView, il vaut mieux le mapper sur un CheckBox, ce qui est plus agréable que de voir afficher 0 ou 1

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 154 internautes nous ont dit merci ce mois-ci

Commenter la réponse de yann_lo_san
Messages postés
33
Date d'inscription
mardi 18 septembre 2007
Statut
Membre
Dernière intervention
27 septembre 2007
3
Merci
Salut !
Tu peux faire ça avec le CheckBoxField ou le TemplateColumn qui contient un CheckBox:
((




CheckBox
)GridView1.SelectedRow.Cells[1].Controls[0]).Checked

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 154 internautes nous ont dit merci ce mois-ci

Commenter la réponse de David REI
Messages postés
48
Date d'inscription
mardi 7 octobre 2003
Statut
Membre
Dernière intervention
9 décembre 2008
1
0
Merci
Merci beaucoup pour vos réponses. Cela m'a bien aidé!

J'apporte quelques précisions sur mon problème, sur les solutions possibles et sur l'utilisation des méthodes que vous m'avez apporté :

La colonne du gridview contenant le booleen est mappé en checkbox (en base SQL, il s'agit bien d'un bit). Résultat, lorsque je retourne la valeur texte de ce champ, je ne récupère rien. D'où le problème.

Or, pour utiliser le Convert.ToBoolean, il faut impérativement avoir une valeur d'entrée. Donc, dans mon cas, lorsque j'utilise 'Convert.ToBoolean(GVW.SelectedRow.Cells(4).Text)', je récupère le message d'erreur suivant : La chaîne n'a pas été reconnue en tant que Boolean valide. Pour que j'utilise cette méthode avec succès, il faut donc que je rajoute une colonne 'classique' non visible pointant sur le même champ bit. Cela me ramène bien alors 'True' ou 'False'.

2ème possibilité, utiliser la propriété Checked du booleen mappé. Pour cela, codant en VB, le code utilisé doit être le suivant :
Dim CBX_DATA as CheckBox
CBX_DATA = GVW.SelectedRow.Cells(4).Controls(0)
Return CBX_DATA.Checked
Je récupère bien alors 'True' ou 'False'.

Voilà pour les explications.

Merci encore et à bientôt!
Commenter la réponse de v.massip