Evénement ajouté à la ligne DataGridView
Je suis à l'aide d'un DataGridView et je lier une Liste à la source de données.
J'ai déjà la colonne de droite et je de carte exactement les champs. Ce que j'essaie de faire est de la manipulation d'une sorte de RowAdded
ou RowDataBound
(comme dans aspx GridView) de l'événement.
Le seul événement que j'ai trouvé est RowsAdded
mais peu importe combien d'articles que j'ai, il est utilisé seulement 4 fois la première fois que j'ai lié, et les deux fois, les autres fois, avec des valeurs
e.Nombre de lignes:1.e.RowIndex:0
e.Nombre de lignes:[n-1] e.RowIndex:1 *où n est le nombre de mes articles
est-il un moyen que je peux obtenir pour une poignée de pour chaque élément?
EDIT: sans changer la DataSource =
méthode de reliure
source d'informationauteur p4bl0 | 2010-04-16
Vous devez vous connecter pour publier un commentaire.
Je viens de tomber sur cette même question. Vous pouvez obtenir de l'index et de la gamme de lignes qui ont été ajoutées à partir de l'événement arguments passés à la RowsAdded gestionnaire d'événement. Utiliser cette information d'une boucle sur chacune des lignes ajoutées.
e.RowIndex
ete.RowCount
vous permettra de déterminer les lignes ajoutées.Si vous vouliez vous pourriez hériter datagridview et de faire votre propre grille qui jette une "RowAdded" événement à l'intérieur de la boucle ci-dessus.
Le moyen le plus facile pour moi, c'est à l'aide d'un Système.De Windows.Les formulaires.BindingSource. Ajouter à la liste, et ensuite utiliser le BindingSource que la grille de la source de données. Ensuite, cela agit comme un intermédiaire entre la grille et les données.
Et puis il y a plusieurs événements qui peuvent ensuite être utilisés à partir de l'bindingsouce. Un de ceux est AddingNew. Vous pouvez également l'utiliser pour capturer des lignes d'ajouter ou supprimé, ainsi que plusieurs autres choses.