2009-09-16 7 views
0

J'ai un databound dataGridView. Lorsque je clique sur la nouvelle ligne, l'événement DefaultValuesNeeded est déclenché et la ligne est remplie avec mes valeurs par défaut. Si je frappe alors l'échappement, la nouvelle rangée sera supprimée. Comment puis-je obtenir le même comportement à partir d'un gestionnaire d'événement de clic sur un bouton? C'est-à-dire que l'événement click doit imiter ce qui se produit en cliquant sur la nouvelle ligne et la touche d'échappement devrait également supprimer la nouvelle ligne.Comment puis-je simuler en cliquant sur une nouvelle ligne dans un DataGridView de databound dans un gestionnaire de clic sur un bouton?

Répondre

0

Pour imiter la touche ESC ajouter l'appel SendKeys suivant dans le bouton clic événement

SendKeys.Send("{ESC}"); 

Pour ajouter une ligne à un DataGridView databound, ajoutez la ligne à la source de données sous-jacentes (par exemple, DataTable ou BindingSource) puis actualisez la grille. Ex:

dataSet.Tables("yourtablename").Rows.Add(); 
+0

Peut-être que je n'étais pas clair. L'événement click doit ajouter une nouvelle ligne à dataGridView, tout comme un clic sur la nouvelle ligne dans dataGridView. Une touche d'échappement suivante doit ensuite supprimer la ligne nouvellement ajoutée. – ejwipp

+0

Cela ajoute une ligne, mais n'entraîne pas un appel à DefaultValuesNeeded, et la nouvelle ligne ne peut pas être supprimée en appuyant sur la touche d'échappement. – ejwipp

+0

A droite, vous ajouteriez vos valeurs par défaut dans la méthode "Add()". Ensuite, vous écoutez la clé d'échappement et appelez dataSet.Tables ("yourtablename"). Rows.RemoveAt(); – SwDevMan81

Questions connexes