begin process at 2008 09 06 04:52:53
1 237 644 membres
42 nouveaux aujourd'hui
14 313 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : datagrid [ Archives / .NET ] (zikofs)

datagrid le 12/04/2006 17:58:02

zikofs
salut je voudraissavoir comment on peut supprimer et modifier des lignes dans un datagrid de winform à partir de boutons merci pour votre aide je suis débutant

Re : datagrid le 13/04/2006 00:02:58

hlayachi
Membre Club

ton datagrid est il lié à une datatable (en principe c'est le cas) ?
si oui tu fais dans le bouton le code suivant:
nomDataTable.Rows[no_ligne_à_effacer].Delete();


Re : datagrid le 13/04/2006 09:28:09

zikofs
Merci pour ta réponse mais comment je vais désigner alors le no de la ligne à effacer lorsqu'on clique sur une ligne du datagrid par exemple.

Re : datagrid le 13/04/2006 13:13:06

24 ans
c'est simple cher ami
je pense qlq shose comme ca

Grid[Grid.CurrentRowIndex, "le numero de votre colonne"]


Re : datagrid le 13/04/2006 21:33:21

hlayachi
Membre Club

tu récuprère la ligne en faisant un Binding

int pos;
BindingManagerBase monManager;
monManager = BindingContext[nomDataSet, "string_représentant_la_table"];
pos = monManager.Position;
nomDataTable.Rows[pos].Delete();


Re : datagrid le 14/04/2006 09:39:05

zikofs
tu veux dire koi par string_représentant_la_table parce qu'il me déclare une errer sur cete ligne en me disant "Child list for field table cannot be created"

Re : datagrid le 14/04/2006 20:46:07

hlayachi
Membre Club
ok je vais t'expliquer. quand tu instancies une nouvelle table depuis la classe DataTable parmi les constructeurs qui existent, il y en un qui ne prend par d'argument comme suit    DataTable maTable = new DataTable() et il y en a un autre qui prend un string comme argument comme suit
DataTable maTable = new DataTable("string_représentant_la_table")
// par exemple string_représentant_la_table = maTable
donc ça depend de quelle façon tu as instancié ta table. Si tu adopté la première solution ok tu fais ça
int pos;
BindingManagerBase monManager;
monManager = BindingContext[nomDataSet, nom_de_la_table];
pos = monManager.Position;
nomDataTable.Rows[pos].Delete();
et si tu as adopté la deuxième solution tu fais ceci
int pos;
BindingManagerBase monManager;
monManager = BindingContext[nomDataSet, "string_représentant_la_table"];
pos = monManager.Position;
nomDataTable.Rows[pos].Delete();

Re : datagrid le 18/04/2006 14:00:49

zikofs
ca marche pas parce que moi en fait j'ai pas crée de tables en fait j'ai écrit un fichier xml et lorsque je j'écris ds.tables[0] l me renvoie la table qui est dans le fichier xml. ca marche pas avant j'arrivais à supprimer une ligne mais pas laligne exacte maintenant j'arrive à rien supprimer. mon problème à moi c'est quej'ai 2 datasets une qui lit du fichier xl et l'autre qui filtre les enregistrements du jour et qui les met dans le dataset alors lorsque je veux supprimer de ce dernier dataset , les enregistrements n'ont pas les mêmes index que pour ceux du dataset qui lit et écrit dans le fichier xml.


Classé sous : datagrid

Participer à cet échange

Livres en rapport

Pub



Appels d'offres

CalendriCode

Septembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
2930     

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Boutique

Boutique de goodies CodeS-SourceS