在我的应用程序中,首先向用户显示登录屏幕,登录后显示的表单有一个菜单栏。
该菜单栏上有两个项目:“注销”和“退出”。如果用户选择注销选项,我希望它返回到上述登录屏幕。如果用户决定单击“退出”,我会提示用户是否确定要退出。
不幸的是,当用户决定通过单击窗口上的“X”按钮来关闭程序时,它仅关闭当前窗体。我的目的是关闭整个应用程序。
基本上,如何通过拦截表单关闭事件来退出当前应用程序?
在注销项下,剥离代码为:
private void logoutToolStripMenuItem_Click(object sender, EventArgs e)
{
Form_Login log = new Form_Login();
this.Close();
log.Show();
}
在退出项下,剥离代码为:
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
{
if (MessageBox.Show("Are you sure to exit the programme ?","Exit",MessageBoxButtons.OKCancel)== DialogResult.OK)
{
Application.Exit();
}
}
当我单击退出按钮时,它会关闭当前表单,我想关闭整个应用程序。
最佳答案
这应该处理点击 [x] 或 ALT+F4 的情况
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (e.CloseReason == CloseReason.UserClosing)
{
DialogResult result = MessageBox.Show("Do you really want to exit?", "Dialog Title", MessageBoxButtons.YesNo);
if (result == DialogResult.Yes)
{
Environment.Exit(0);
}
else
{
e.Cancel = true;
}
}
else
{
e.Cancel = true;
}
}
关于c# - 关闭表单按钮事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17796151/