Comment saisir l’événement du bouton de fermeture de la fenêtre (bouton X rouge sur le coin supérieur droit de la fenêtre) sous la forme wpf?

Comment saisir l’événement du bouton de fermeture de la fenêtre (bouton X rouge sur le coin supérieur droit de la fenêtre) sous la forme wpf? Nous avons également l’événement de clôture, l’événement window non chargé, mais nous souhaitons afficher une fenêtre contextuelle s’il clique sur le bouton de fermeture du formulaire wpf.

Aide aimablement.

Utilisez l’événement Closing dans la fenêtre, vous pouvez le gérer comme ceci pour l’empêcher de se fermer:

 private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) { e.Cancel = true; } 

Si vous appuyez sur le bouton de confirmation dans Form2, effectuez l’action. Si vous appuyez sur le bouton X, ne faites rien:

 public class Form2 { public bool confirm { get; set; } public Form2() { confirm = false; InitializeComponent(); } private void Confirm_Button_Click(object sender, RoutedEventArgs e) { //your code confirm = true; this.Close(); } } 

première forme:

 public void Form2_Closing(object sender, CancelEventArgs e) { if(Form2.confirm == false) return; //your code } 

En VB.NET:

  Private Sub frmMain_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing ' finalize the class End Sub 

Pour désactiver le bouton Form X:

 '===================================================== ' Disable the X button on the control bar '===================================================== Private Const CP_NOCLOSE_BUTTON As Integer = &H200 Protected Overloads Overrides ReadOnly Property CreateParams() As CreateParams Get Dim myCp As CreateParams = MyBase.CreateParams myCp.ClassStyle = myCp.ClassStyle Or CP_NOCLOSE_BUTTON Return myCp End Get End Property