【发布时间】:2010-05-10 15:24:06
【问题描述】:
这一定是个愚蠢的问题,但我想不通。我也不能使用设计器,因为我之前的编码人员设法将 GUI 和逻辑合二为一,所以现在很困惑。我必须按照老派的方式来做。
我有一个可以通过 3 种方式关闭的表单:关闭按钮、文件/关闭菜单和 X 图标。我希望他们都做同样的事情。拦截按钮和菜单事件很容易。事实上,两者都与onCloseConfig 方法相关联。顺便说一句,这种方法有更好的名称吗?
private void onCloseConfig(object sender, System.EventArgs e)
{
if (! m_configControl.Modified)
{
Application.Exit(); // Or should it be this.Close();
}
....
// Else present a dialog, ask if they want to save.
}
所以,拦截X 我试过:this.FormClosing +=new FormClosingEventHandler(this.onCloseConfig); 我相信这是导致无限循环的原因。我不希望这样:) FormClosed 是另一种选择,但似乎为时已晚。我只是想拦截点击 X 的事实,而不是关闭表单的事实。
【问题讨论】: