窗体关闭事件(Form.Closing)未列为窗体事件?

4
我正在使用Visual Studio 2010,通常我想添加除鼠标点击以外的事件时,我会转到事件选项卡并找到事件,单击它,然后它会带我到代码中的那个位置。
但是,我找不到窗体的"Closing"事件。
我尝试手动添加它,但我认为在幕后有更多的事情需要VS来处理。
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{

}

如果我必须手动输入所有内容,那么如何以最有效的方式为FormClosing事件编写所有内容?

这是WinForms表单。


1
它被称为 FormClosing,而不是 Closing(然后我看到答案,发现已经有人回答了! :-) ) - Jcl
确实很奇怪,因为在我的设计师表单部分中它读取为:this.Closing += ... - Ole EH Dufour
2个回答

10

它叫做 FormClosing 而不是 Closing。您可以通过打开属性窗口并单击“事件”按钮,然后双击“FormClosing”项来添加事件:

enter image description here

您已经接近成功了。您缺少的是将事件与处理程序连接起来的代码后台,在按照上述步骤操作时会自动生成。以下是在“Form1.Designer.cs”文件中的 InitializeComponent 方法中的样子(在解决方案资源管理器顶部单击“显示所有文件”按钮以查看):

this.FormClosing += 
    new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);

1
如果您手动添加了Form1_FormClosing方法,那么您应该在构造函数中添加以下代码行:
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);

对于表单关闭事件:

点击表单 -> 属性 -> 事件 -> 表单关闭


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接