在c#窗口应用程序中只向用户询问确认消息一次
本文关键字:消息 确认 一次 应用程序 窗口 用户 | 更新日期: 2023-09-27 18:06:07
我用c#构建了一个Windows应用程序。
在表单关闭事件中,我写了这样的代码来询问确认表单用户…
private void Approve_User_FormClosing(object sender, FormClosingEventArgs e)
{
if (MessageBox.Show("Do you really want to QUIT application...?", "Confirmation", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
Application.Exit();
}
else
{
e.Cancel = true;
}
}
有时它要求四次,甚至高达五次....
我只希望这一次,如果用户按下是,那么应用程序应该退出。
我需要你的帮助和建议。显然您在执行几次的地方订阅了这个Approve_User_FormClosing
事件。如果你订阅4,5次,它将执行4,5次。
如果你只想捕获应用程序退出事件,看看这个线程。
编辑
你需要像下面这样的东西来实现你奇怪的需求。
private bool isExiting = false;
private void Approve_User_FormClosing(object sender, FormClosingEventArgs e)
{
if (isExiting)
return;
if (MessageBox.Show("Do you really want to QUIT application...?", "Confirmation", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
isExiting = true;
Application.Exit();
}
else
{
e.Cancel = true;
}
}