Как перехватить событие Exit для формы Windows в VB? - PullRequest
2 голосов
/ 08 апреля 2010

Когда пользователь нажимает на маленькую красную "x" a.k.a. кнопку закрытия формы на панели команд формы, что даже активируется помимо FormClosed ()

Я знаю, что вызывается FormClosing (), но я не могу остановить закрытие формы после запуска моего кода. Я хочу иметь возможность показывать окно сообщения, которое спрашивает, хочет ли пользователь выйти из формы или нет. Очевидно, что если они нажмут «нет», я хочу, чтобы форма оставалась открытой, как бы я это сделал?

1 Ответ

5 голосов
/ 08 апреля 2010

В событии FormClosing вы можете установить свойство Cancel объекта FormClosingEventArg для отмены события.

    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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...