Form.Closing事件

问题描述 投票:0回答:2

我正在通过询问以下问题来关闭应用程序,但它无法正常工作。

任何帮助都很棒!

Private Sub MainWindow_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing


Dim result As Integer
result = MessageBox.Show("Are you want to close", "Exit", 
MessageBoxButton.YesNo, MessageBoxImage.None)
If (result = DialogResult.No) Then
    e.Cancel = True
Else
    Application.Exit()
End If

End Sub
wpf vb.net
2个回答
0
投票

这应该工作:

Private _handle As Boolean = True
Private Sub MainWindow_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
    If _handle = True Then
        e.Cancel = True

        Dim result = MessageBox.Show("Are you want to close?", "Exit", MessageBoxButton.YesNo, MessageBoxImage.None)
        If (result = MessageBoxResult.Yes) Then
            _handle = False
            Environment.Exit(0)
        End If
    End If
End Sub

1
投票

好吧,这个问题已经有了一个可接受的答案,但我想我只是添加另一个,一个单行,因为看来OP只做MessageBox检查。在boolean比赛中,我觉得不需要Application.Exit()Environment.Exit(0) Closing

Private Sub MainWindow_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
    If Not MessageBox.Show("Are you sure you want to close?", "Exit", MessageBoxButton.YesNo, MessageBoxImage.None) = MessageBoxResult.Yes Then e.Cancel = True
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.