Form.FormClosing Événement

Définition

Se produit avant la fermeture du formulaire.

public:
 event System::Windows::Forms::FormClosingEventHandler ^ FormClosing;
public event System.Windows.Forms.FormClosingEventHandler FormClosing;
public event System.Windows.Forms.FormClosingEventHandler? FormClosing;
member this.FormClosing : System.Windows.Forms.FormClosingEventHandler 
Public Custom Event FormClosing As FormClosingEventHandler 

Type d'événement

FormClosingEventHandler

Exemples

L’exemple suivant illustre l’utilisation de ce membre. Dans l’exemple, un gestionnaire d’événements signale l’occurrence de l’événement FormClosing . Ce rapport vous permet d’apprendre quand l’événement se produit et peut vous aider à déboguer. Pour signaler plusieurs événements ou événements qui se produisent fréquemment, envisagez de remplacer MessageBox.Show Console.WriteLine ou d’ajouter le message à un multiligne TextBox.

Pour exécuter l’exemple de code, collez-le dans un projet qui contient une instance de type Form nommé Form1. Vérifiez ensuite que le gestionnaire d’événements est associé à l’événement FormClosing .

private void Form1_FormClosing(Object sender, FormClosingEventArgs e) {

System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "CloseReason", e.CloseReason );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Cancel", e.Cancel );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "FormClosing Event" );
}
Private Sub Form1_FormClosing(sender as Object, e as FormClosingEventArgs) _ 
     Handles Form1.FormClosing

    Dim messageBoxVB as New System.Text.StringBuilder()
    messageBoxVB.AppendFormat("{0} = {1}", "CloseReason", e.CloseReason)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Cancel", e.Cancel)
    messageBoxVB.AppendLine()
    MessageBox.Show(messageBoxVB.ToString(),"FormClosing Event")

End Sub

Remarques

L’événement FormClosing se produit lorsque le formulaire est fermé. Lorsqu’un formulaire est fermé, il est supprimé, libérant toutes les ressources associées au formulaire. Si vous annulez cet événement, le formulaire reste ouvert. Pour annuler la fermeture d’un formulaire, définissez la Cancel propriété du FormClosingEventArgs gestionnaire trued’événements sur .

Lorsqu’un formulaire est affiché sous forme de boîte de dialogue modale, le fait de cliquer sur le bouton Fermer (le bouton avec un X en haut à droite du formulaire) entraîne l’affichage du formulaire et la DialogResult propriété à définir DialogResult.Cancelsur . Vous pouvez remplacer la valeur affectée à la DialogResult propriété lorsque l’utilisateur clique sur le bouton Fermer en définissant la DialogResult propriété dans un gestionnaire d’événements pour l’événement FormClosing du formulaire.

Notes

Lorsque la Close méthode est appelée sur une Form fenêtre sans mode, vous ne pouvez pas appeler la Show méthode pour rendre le formulaire visible, car les ressources du formulaire ont déjà été libérées. Pour masquer un formulaire, puis le rendre visible, utilisez la Hide méthode.

Si le formulaire est un formulaire parent MDI (Multiple Document Interface), les FormClosing événements de tous les formulaires enfants MDI sont déclenchés avant que l’événement du FormClosing formulaire parent MDI ne soit déclenché. De même, les FormClosed événements de tous les formulaires enfants MDI sont déclenchés avant que l’événement FormClosed du formulaire parent MDI ne soit déclenché. L’annulation de l’événement FormClosing d’un formulaire enfant MDI n’empêche pas l’événement FormClosing du formulaire parent MDI d’être déclenché. Toutefois, l’annulation de l’événement est définie sur true la Cancel propriété de la FormClosingEventArgs classe passée en tant que paramètre au formulaire parent. Pour forcer la fermeture de tous les formulaires parents et enfants MDI, définissez la Cancel propriété false sur le formulaire parent MDI.

Pour plus d'informations sur la gestion des événements, voir gestion et déclenchement d’événements.

S’applique à

Voir aussi