2012-12-20 2 views
0

Dans l'application winforms, j'ai créé myBindingSource, myTableAdapter, etc via le concepteur, par glisser-déposer dans le formulaire. Dans le formulaire j'ai les boutons Enregistrer et Supprimer. L'exigence est lorsque le bouton Supprimer est cliqué, il doit immédiatement supprimer un enregistrement de la base de données, pas lorsque le bouton Enregistrer est cliqué. J'ai donc ajouté la requête DeleteMyRecord à MyDataSet via le concepteur et j'utilise cette requête pour supprimer. Le problème est supprimé L'enregistrement est toujours dans l'instance myDataSet, j'ai donc besoin de le détacher de sa base de données. Si je fais simplement ce qui suit:Détacher une ligne de BindingSource ou de DataTable, qui a été supprimée indépendamment

myBindingSource.DeleteCurrent(); 

il encore faire MyDataSet sale, donc, quand je clique sur le bouton Enregistrer cela se traduira par un conflit d'accès concurrentiel. Ce que je veux, c'est simplement détacher la ligne supprimée, mais ne pas affecter les autres changements s'il y en avait, avant de supprimer cet enregistrement.

Répondre

0

Vous pouvez utiliser la méthode Remove de l'objet DataRowCollection pour accomplir cela. Que ce soit un bon design est une autre affaire.

Questions connexes