2010-07-19 9 views
2

Je construis une application en C# en utilisant VS 2008 - J'ai ajouté une méthode pour vérifier si un fichier a changé quand il est fermé, mais cela ne fonctionne que pour le menu Fichier> fermer. Est-il possible d'obtenir le X rouge dans le coin supérieur droit de faire quoi que ce soit avant d'arrêter tout? Si c'est le cas, comment? Je n'ai été faire C# pendant quelques jours, et cela est très confus - il n'y a aucune méthode pour la fenêtre d'interface globale partout. L'aide est très appréciée. Merci.Utilisation du bouton de fermeture en C#

Répondre

6

Utilisez l'événement Form.FormClosing. Ou l'événement FormClosed, qui vient plus tard et ne peut pas annuler la fermeture.

Et à partir du fichier | Fermer ligneMenu, il suffit de fermer() le formulaire.

Si vous faites cela, vous avez 1 point (FormClosing) où toutes les façons possibles de fermer un formulaire (y compris ALT + F4 et TaskManager) convergent.

Faites jeter un oeil à e.CloseReason, vous ne voulez pas être dans le chemin quand il est par exemple WindowsShutDown

+0

Lorsque vous utilisez ces événements vous devez prendre en compte le fait que sur les boutons OK ou Annuler (n'importe quel bouton de fermeture de dialogue d'ailleurs) ces événements sont également appelés, donc le code dans votre gestionnaire d'événements devra prendre ces situations en considération. – Anton

+0

@Anton, correct, mais à partir du fichier | clôture i recueilli que ce n'était pas une boîte de dialogue. –

+0

tbh mon hypothèse peut être complètement prématurée, je viens d'ajouter cela à (espérons-le) sauver l'OP certains travaux juste au cas où :) – Anton

Questions connexes