Bonjour,
J'ai un Datatable mais je voudrais supprimer certaines lignes sous certaines conditions.
Je voudrais donc supprimer les lignes dont la colonne[XXXX] a pour valeur ZZZZ
Hors je toruve pas comment faire je patauge total.
Bonjour,
J'ai un Datatable mais je voudrais supprimer certaines lignes sous certaines conditions.
Je voudrais donc supprimer les lignes dont la colonne[XXXX] a pour valeur ZZZZ
Hors je toruve pas comment faire je patauge total.
Tu ne peux modifier une collection sur laquelle tu boucle.
La seule solution pour moi est de créer une liste de DataRow "L", boucler qur les Rows de ta DataTable, et ajouter dans "L" les lignes que tu désire conserver .
Ensuite, tu Clear les lignes de la DataTable, et tu met "L" à la place.
Hervé Delannoy, Ingénieur études&développement.
Je n'accepte pas les demandes de mise en relation MSN/yahoo sans motif.
------------------------------------------------------------------------
Si , ni , ne peuvent vous aider, mais nous oui, pensez à un pti et au !
Merci de vous relire
____________________________________________________________________________________
Recherche joueurs de "Magic" sur Lille et environs.
Donner plutôt que jeter.
Oki mais j'arrive pas a detexter la valeur X de la colonne[ZZ]
On peut procéder ainsi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 DataRow[] rows = maTable.Select("ZZ=X"); // si la valeur est dans une colonne de type string, ne pas oublier d'ajouter les ' ' // DataRow[] rows = maTable.Select("ZZ='X'"); foreach (DataRow row in rows) { matable.Rows.Remove(row); }
Pas de questions techniques par MP
Quelle est elle ?
Hervé Delannoy, Ingénieur études&développement.
Je n'accepte pas les demandes de mise en relation MSN/yahoo sans motif.
------------------------------------------------------------------------
Si , ni , ne peuvent vous aider, mais nous oui, pensez à un pti et au !
Merci de vous relire
____________________________________________________________________________________
Recherche joueurs de "Magic" sur Lille et environs.
Donner plutôt que jeter.
un truc du style : une ligne a ete supprime le foreach ne pourra plus continuer noramlement.
cela revien a ce que je disais au départ: tu ne peux modifier une liste que tu es en train de parcourir... Le truc drole dans le cas du code juste au dessus, c'est qu'il boucle pas sur la liste, mais sur un tableau... essaie ma méthode pour voir si ca fait pareil.
Hervé Delannoy, Ingénieur études&développement.
Je n'accepte pas les demandes de mise en relation MSN/yahoo sans motif.
------------------------------------------------------------------------
Si , ni , ne peuvent vous aider, mais nous oui, pensez à un pti et au !
Merci de vous relire
____________________________________________________________________________________
Recherche joueurs de "Magic" sur Lille et environs.
Donner plutôt que jeter.
Ta methode ca fonctionne pas je perd le nom de mes colonnes et donc l'affichage par la suite et de plus j'arrive pas a detecter un champs precis cf message au dessus
Je ne comprend pas pourquoi tu perds le nom de tes colonnes... Tu peux en dire plus ? (ex de code ?)
Hervé Delannoy, Ingénieur études&développement.
Je n'accepte pas les demandes de mise en relation MSN/yahoo sans motif.
------------------------------------------------------------------------
Si , ni , ne peuvent vous aider, mais nous oui, pensez à un pti et au !
Merci de vous relire
____________________________________________________________________________________
Recherche joueurs de "Magic" sur Lille et environs.
Donner plutôt que jeter.
Est ce qu'on peut répondre a ma deuxieme question.
Comment récuperer une ligne d'un dataset ou datatable en fonction de la valeur d'une colonne sans faire un select qui ramene un collection de row qui ne m'interesse pas.
En utilisant Find () ? je ne sais plus si la méthode est dispo à ce niveau.
Hervé Delannoy, Ingénieur études&développement.
Je n'accepte pas les demandes de mise en relation MSN/yahoo sans motif.
------------------------------------------------------------------------
Si , ni , ne peuvent vous aider, mais nous oui, pensez à un pti et au !
Merci de vous relire
____________________________________________________________________________________
Recherche joueurs de "Magic" sur Lille et environs.
Donner plutôt que jeter.
Si tu connais la valeur de l'ID de ta DataTable, tu peux faire un find car l"ID sera unique. Le find te renverra la DataRow si il trouve ou sinon null.
Pour supprimer des DataRow je fais comme ca:
1) Je recuper l'ID a supprimer:
Boucle sur ton DataTable et si "la colonne[XXXX] a pour valeur ZZZZ" tu rajoute l'ID de ta DataRow dans une ArrayList.
2) Parcours de la liste des ID a supprimer et suppression des DataRow correspondantes.
Boucle sur ta liste d'ID que tu veux supprimer. Pour chaque ID de ta liste, tu fais un DataTable.Find pour recuperer ta row puis tu fait MaDataTable.Rows.Remove(MaRowASupprimer).
Exemple de code :
Ca devrait etre un truc comme ca parmi plusieurs solutions.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 // Operation 1 ArrayList RowsASupprimer = new ArrayList(); foreach(DataRow MaDataRowASupprimer in MaDataTable.Rows) { if(MaDataRowASupprimer["COLONNE_A"].ToString() == "A_SUPPRIMER") { RowsASupprimer.Add(MaDataRowASupprimer["COLONNE_ID"]); } } // Operation 2 Ienumerator EnumRowsASupprimer = MaDataRowASupprimer.GetEnumerator(); while(EnumRowsASupprimer.MoveNext()) { DataRow MaDataRowASupprimer = MaDataRowASupprimer.Find(EnumRowsASupprimer.Current); if(MaDataRowASupprimer != null) { MaDataTable.Rows.Remove(MaDataRowASupprimer); } }
Contrec
Je valide le principe
Hervé Delannoy, Ingénieur études&développement.
Je n'accepte pas les demandes de mise en relation MSN/yahoo sans motif.
------------------------------------------------------------------------
Si , ni , ne peuvent vous aider, mais nous oui, pensez à un pti et au !
Merci de vous relire
____________________________________________________________________________________
Recherche joueurs de "Magic" sur Lille et environs.
Donner plutôt que jeter.
Mais de rien.
Hervé Delannoy, Ingénieur études&développement.
Je n'accepte pas les demandes de mise en relation MSN/yahoo sans motif.
------------------------------------------------------------------------
Si , ni , ne peuvent vous aider, mais nous oui, pensez à un pti et au !
Merci de vous relire
____________________________________________________________________________________
Recherche joueurs de "Magic" sur Lille et environs.
Donner plutôt que jeter.
Merci j'ai finis par reussir a creer comme je voulais mon dataset a partir d'autre dataset.
Le truc c'est que maintenantje cherche a rendre tout les lignes d'un gridview editable !!!
Mais si tu as Visual Studio, tu peux editer les colonnes de ta DataGridView et mettre la propriete read-only a false.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3MaDataGridView.ReadOnly = false; MaDataGridView.EditMode = DataGridViewEditMode.EditOnEnter;
C'est cela que tu cherches ?
Contrec
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager