3

我找到了这个:

表单右上角带X的按钮,如何捕捉这个事件@C#

这表示我应该使用 FormClosing 事件来找出由于单击 X 而关闭窗口的时间。

但是我的事件代码永远不会被调用:

private void MainWin_FormClosing(Object sender, FormClosingEventArgs e)
{
    m_closeThread = true;
    Application.Exit();
}

我一定错过了一些基本的东西,但我不知道是什么。

4

2 回答 2

8

您必须订阅该事件,例如:

this.FormClosing += this.MainWin_FormClosing;

在表单的构造函数(或某处)中,或使用:

override void OnFormClosing(FormClosingEventArgs e)
{
    m_closeThread = true;
    Application.Exit();
}
于 2011-08-16T17:32:03.477 回答
1

确保您正确订阅了FormClosing事件。

您必须在 MainWin 对话框中(通常在构造函数中),如下所示:

this.FormClosing += new FormClosingEventHandler(MainWin_FormClosing);

希望能帮助到你。

于 2011-08-16T17:33:31.830 回答