VB.NET:Abort FormClosing()

Bib*_*ath 8 vb.net formclosing

我有一个代码片段,我想在应用程序关闭时运行.所以,我用FormCLosing事件.但现在我想发出一条退出确认信息.例如,如果用户单击"退出"(X)按钮,则会出现提示,如果他单击"否",则应用程序将不会关闭并恢复到之前的状态.

现在我发现使用FormClosing事件很难实现.因为无论用户点击什么按钮,它都会被执行.对此有任何补救措施吗?

我的意思是,我需要一个像ExitButtonPressed()...

Adr*_*der 20

你可以试试像

Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
    If (MessageBox.Show("Close?", "", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.No) Then
        e.Cancel = True
    End If
End Sub
Run Code Online (Sandbox Code Playgroud)

看一下

FormClosingEventArgs类

CancelEventArgs.Cancel属性

可以通过将Cancel属性设置为true来取消该事件.