【发布时间】:2016-03-31 05:04:41
【问题描述】:
我的 WinForms 应用程序上有一个使用此代码的注销选项:
// restart the application once user click on Logout Menu Item
private void eToolStripMenuItem_Click(object sender, EventArgs e)
{
Application.Restart();
}
单击“注销”选项会弹出带有“是”或“否”的“您确定”框
private void frmMain_FormClosing(object sender, FormClosingEventArgs e)
{
//Double check if user wants to exit
var result = MessageBox.Show("Are you sure you want to exit?", "Message",
MessageBoxButtons.YesNo, MessageBoxIcon.Information);
if (result == DialogResult.Yes)
{
e.Cancel = false;
}
else
{
e.Cancel = true;
}
}
,yes 没有问题,但是点击“No”仍然会重启应用程序,我该如何解决这个问题?
【问题讨论】:
-
问题已更新@MickyD
-
不要使用 ^^ 使用 @ 和此人的姓名,以便他们收到回复通知
-
嗯,这没什么意义。请改用 Application.Exit()。
-
嗯,我想知道
Application.Restart()或Application.Exit()是否会杀死消息泵,使取消无关紧要?请尝试致电Close()。然后在您的FormClosing处理程序中,为 yes 调用Application.Exit()而对于 no 什么也不做 -
@MickyD Application.Exit() 效果很好。