Datagrid et parcours du tableau

Résolu
cs_ChamY Messages postés 72 Date d'inscription mercredi 5 janvier 2005 Statut Membre Dernière intervention 22 mai 2009 - 28 déc. 2005 à 20:34
SharpMao Messages postés 1024 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 7 juin 2010 - 4 janv. 2006 à 12:55
Bonjour.
J aurais besoin d'un peu d aide pour mon application.
Je dispose d'un datagrid contenant un tableau et 3 colonnes :
- 2 colonnes de type texte
- 1 colonne de type checkbox

Je voudrais parcourir mon tableau, et ajouter seulement les lignes ou la case de la colonne 3 est cochée.
Quand j'ai toutes les lignes avec la colonne 3 de cochée, je les affiche dans un 2e datagrid (meme nom des champs ...) de ma form2.

Je pense qu'il faudrais parcourir mon tableau, verifier si la colonne 3 est sur "true" et ensuite l'ajouter a un dataset, ou simplement enregistrer en fichier xml et l ouvrir (ca je sais faire).
Bonne methode ?
Seulement je ne sais pas faire :)

ps : je debute en c# et surtout en winforms (j'avais plutot l'habitude de coder en mode console)

merci

7 réponses

SharpMao Messages postés 1024 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 7 juin 2010 69
29 déc. 2005 à 08:23
Hello,

Essaie ceci :


DataRow[] myRows = myDataSet.Tables["Customers"].Select("Vrai = True");

Amicalement, SharpMao
3
cs_ChamY Messages postés 72 Date d'inscription mercredi 5 janvier 2005 Statut Membre Dernière intervention 22 mai 2009
28 déc. 2005 à 21:36
j'ai testé cette methode, mais ca ne marche pas :

int nombre = myDataSet.Tables["Customers"].Columns["Vrai"].Expression.CompareTo("true");

Custumers c est le nome de ma table,
Vrai : la colonne ou je peu cocher.

Il ne me trouve jamais rien. De plus je ne parcours pas le tableau.
0
SharpMao Messages postés 1024 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 7 juin 2010 69
29 déc. 2005 à 08:30
Tu peux aussi utiliser les DataView :


Dataview dvnew DataView(ds.Tables[0],"Vrai True");

Ensuite, si tu veux afficher les données, tu utilise dv comme DataSource.

Amicalement, SharpMao
0
cs_ChamY Messages postés 72 Date d'inscription mercredi 5 janvier 2005 Statut Membre Dernière intervention 22 mai 2009
29 déc. 2005 à 15:53
Merci.
Ta premiere reponse semble marcher. Mais je ne sais pas comment verifier les resultats.
Si j affiche comme ca : richTextBox1.Text =myRows.ToString();
ca me retourne des trucs bizars: " System.Data.DataRow[]"

Ta deuxieme reponse na pas la bonne syntaxe.
je suppose que ton ds represente mon Dataset, ce qui nous donne :

DataView dv=
new DataView(
myDataSet.Tables[0],"Vrai = True")
;

"Impossible de convertir un string en bool"

merci :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
SharpMao Messages postés 1024 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 7 juin 2010 69
30 déc. 2005 à 08:16
Hello,

Oui, la syntaxe n'était pas correcte, j'ai fait du copier coller depuis mon test.

la syntaxe correcte doit être
DataView dv new DataView(myDataSet.Tables["Customers"],"Vrai True");

Amicalement, SharpMao
0
cs_ChamY Messages postés 72 Date d'inscription mercredi 5 janvier 2005 Statut Membre Dernière intervention 22 mai 2009
30 déc. 2005 à 14:17
il y a toujours une erreur dans la syntaxe,
mais j ai cherché et j ai trouvé ca :DataView dv new DataView(myDataSet.Tables["Customers"],"Vrai True", "Vrai", DataViewRowState.CurrentRows);
(aide msdn)
ne ne sais pas trop a quoi correspond le 3e parametre, jvais regarder.

Maintenant que j ai mon dv rempli, je l'affiche comment ?

merci
0
SharpMao Messages postés 1024 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 7 juin 2010 69
4 janv. 2006 à 12:55
Si ton DataGrid s'appel dg :

dg.DataSource = dv;

Et le tour est joué.

Amicalement, SharpMao

P.S. Bonne et heureuse année.
0
Rejoignez-nous