2008-09-16 11 views
5

Dans mon application .NET/Forms, j'ai un DataGridView qui est lié à un DataTable. L'utilisateur sélectionne une ligne de DataGridView en double-cliquant et interagit avec l'application. Après cela, le contenu de la ligne est mis à jour par programmation.Mise à jour de déclencheur sur DataTable lié à DataGridView

Lorsque l'utilisateur sélectionne une nouvelle ligne, les modifications sur la ligne précédente sont propagées automagiquement à DataTable par l'infrastructure. Comment puis-je déclencher cette mise à jour à partir de mon code afin que l'utilisateur n'ait pas à sélectionner une nouvelle ligne?

Répondre

0

Je suppose que cela dépend de ce qui déclenche la mise à jour, si elle est dans une routine de validation, vous pouvez simplement l'appeler après que l'utilisateur clique sur OK lors de la modification des données. Votre question est vague, il serait plus facile de répondre avec plus d'informations. Quelle est cette interaction? Est-ce un dialogue? Qu'est-ce qui met à jour les données?

0

Voici le processus de clarifier ceci:

  1. utilisateur de l'application de la ligne
  2. récupère les données à partir de db, traite les données récupérées et remplit les contrôles sur la même forme que l'utilisateur DataGridView
  3. interagit avec les contrôles et enfin presses bouton appliquer sur le même formulaire
  4. application traite état des contrôles, écrit des données sur db et écrit des données sur DataGridView

  5. Si l'utilisateur déplace la sélection sur DataGridView

  6. ALORS modifications sont propagées à la limite DataTable

Je voudrais déclencher 6 instantanément après avoir modifié le DataGridView de mon code.

4

Je viens d'avoir la même question, et a trouvé la réponse here:

Lorsque l'utilisateur quitte la ligne , le contrôle engage tous les changements ligne. L'utilisateur peut également appuyer sur CTRL + ENTRÉE pour valider les changements de ligne sans quitter la ligne. Pour valider les modifications de la ligne par programme, appelez la méthode Validate du formulaire . Si votre source de données est une source de liaison, vous pouvez également appeler BindingSource.EndEdit.

Appel Valider() a fonctionné pour moi.

+0

J'ai utilisé la méthode Validate du formulaire pour un DataGridView lié à un DataSet, merci pour l'info, je cherchais à travers les méthodes DataGridView et le DataSet pour quelque chose. – ManiacZX

Questions connexes