我正在尝试在我的Windows窗体应用程序中包含一种方式,当用户尝试关闭窗口时,它会打开一个带有取消选项的对话框....该办公室经典之一。
在其他主题中,人们描述了如何防止Windows关闭。他们使用一个对话框。它有帮助,但如果用户立即点击此框中的任何选项,则Windows会关闭该应用程序。
你可以理解我的意思,做以下测试:
在Windows Vista或7中打开Paint,Word或任何办公软件并开始写东西。不要保存它。
尝试关闭窗口,当出现经典保存对话框立即时,单击“取消”。
您将看到该应用程序继续工作,Windows正在询问您要执行的操作。
我尝试按照Microsoft Link进行操作,但如果我在消息框中单击“确定”,应用程序将关闭。
答案 0 :(得分:4)
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (e.CloseReason.Equals(CloseReason.WindowsShutDown))
{
if (MessageBox.Show("You are closing this app.\n\nAre you sure you wish to exit ?", "Warning: Not Submitted", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Stop) == DialogResult.Yes)
return;
else
e.Cancel = true;
}
}
答案 1 :(得分:0)
虽然建议不要使用延迟窗口关闭,但可以使用关闭脚本。您可以使用gpedit.msc配置文件配置自己的脚本文件。 我已经读过这些脚本可以将窗口关闭延迟10分钟。
我希望它有所帮助