Synchro Datagridview et dataset

alexbesn Messages postés 21 Date d'inscription jeudi 23 avril 2009 Statut Membre Dernière intervention 4 août 2009 - 4 juin 2009 à 14:45
alexbesn Messages postés 21 Date d'inscription jeudi 23 avril 2009 Statut Membre Dernière intervention 4 août 2009 - 10 juin 2009 à 16:44
Bonjour.

J'utilise un datagrid view pour visualiser les données de ma base contenues dans un dataset.

Je sais que lorsqu'on modifie directement dans le datagridview on modifie en même temps la source (donc dans mon cas le dataset).

Or j'aimerai mettre à jour ma base après avoir fait une modification. Lors de l'événement "CellEndEdit" j'exécute le code suivant :

            OleDbDataAdapter Da = new OleDbDataAdapter("select * from " + listBox_tables.SelectedItem.ToString(), Conn);
            OleDbCommandBuilder ma_commande = new OleDbCommandBuilder(Da);
            Da.UpdateCommand = ma_commande.GetUpdateCommand();
            Da.Update(Ds, Convert.ToString(listBox_tables.SelectedItem));

Ds est le nom du dataset utilisé comme source pour le datagridview.

Or ce code ne fonctionne pas et je ne comprend vraiment pas pourquoi ...

1 réponse

alexbesn Messages postés 21 Date d'inscription jeudi 23 avril 2009 Statut Membre Dernière intervention 4 août 2009
10 juin 2009 à 16:44
J'ai compris pourquoi.

Cet événement se produit quand on quitte l'édition de la cellule, or le datagridview n'a pas encore modifié la propriété rowstate de la ligne du dataset.

Sauf qu'il n'y a pas d'événement dans le dgv qui se produit après que le rowstate soit modifié, je ne sais donc pas quand appeler mon code (qui est correct).

Quelqu'un aurait une idée ?

Merci !
0
Rejoignez-nous