如何在VB中拦截Windows窗体的Exit事件?

时间:2010-04-07 20:52:45

标签: vb.net forms visual-studio-2008 events

当用户点击表格命令栏上的小红色“x”a.k.a.表单关闭按钮时,除了FormClosed()之外还会激活什么

我知道调用了FormClosing(),但是在代码运行后我无法阻止表单关闭。我希望能够显示一个消息框,询问用户是否要退出表单。显然,如果他们点击否,我希望表格保持开放,我该怎么做?

1 个答案:

答案 0 :(得分:5)

在FormClosing事件中,您可以设置FormClosingEventArg的Cancel属性以取消该事件。

    Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing

        Dim result As DialogResult = MessageBox.Show("Close Form?", "Yeehaw!", MessageBoxButtons.YesNo)
        If result = Windows.Forms.DialogResult.No Then
            e.Cancel = True
        End If

    End Sub