2012-11-27 4 views
1

J'utilise Visual Studio 2010 pour créer une application Windows Form C#. Dans le formulaire principal j'ai un bouton qui ouvre la forme secondaire en utilisant ShowDialog() qui fait quelques mises à jour sur la base de données. Lorsque l'utilisateur enregistre des données et ferme ce formulaire, je dois mettre à jour mon ListView sur le formulaire principal à partir de la base de données. Comment déclencher des mises à jour sur ListView lorsque Formulaire secondaire est fermé? J'ai essayé des événements de souris pour faire la mise à jour sur ListView mais c'est un peu en retard. Y at-il un événement que je peux utiliser pour y parvenir?Mises à jour sur le formulaire principal après la fermeture d'un autre formulaire

+0

poster du code u fait – Milind

+0

Pourquoi le tag WPF? – Clemens

+0

L'événement 'FormClosing' peut vous aider dans cette opération. –

Répondre

7

Si vous utilisez ShowDialog() que l'exécution continue de la chaîne suivante après la forme a été fermée:

var updateForm = new UpdateForm(); 
updateForm.ShowDialog(); 

// Here it was closed 
UpdateMainForm(); 
+0

Right ... La méthode ShowDialog() est un appel bloquant. – ScoPi

+0

Oui. Cela va résoudre la question. Solution facile et question. – Nitin

0

On dirait que vous souhaitez mettre à jour listview sur le formulaire principal dès que l'utilisateur se fait avec des changements dans la forme sous et le ferme.

Si cela est vrai, le formulaire principal peut souscrire un gestionnaire à l'événement subform.closing. Et dans le gestionnaire d'événements, vous pouvez mettre à jour listview depuis la base de données. N'oubliez pas de vous désabonner du gestionnaire de subform.closing.

Questions connexes