如何绕过表单关闭事件
本文关键字:事件 表单 何绕过 | 更新日期: 2023-09-27 18:34:28
我有以下代码:
private void form1_closing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
this.Hide();
}
我想要一个关闭窗体的按钮,而不触发此事件。我该怎么做?
按钮的代码:
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
{
Application.Exit();
}
我希望上面的按钮关闭表单而不是隐藏它。
//unsubscribe the mean "don't let me close" handler
this.FormClosing -= form1_closing;
//close form
this.Close();
另一种选择是将布尔字段设置为"shouldIReallyClose"。 默认为 false。 当您确实要关闭窗体时,请将其设置为 true。 更改事件处理程序以在取消事件之前检查该布尔值。
protected override void OnFormClosing(FormClosingEventArgs e)
{
if(!boolTrackingButtonPressed)
{
base.OnFormClosing(e);
}
}