我有一个 C# GUI 应用程序,它使用 显示一条消息MessageBox.Show(Message);
,但是如果用户未能单击它,然后请求关闭 PC,它会阻止关闭。如何防止我打开的对话框阻止关机?
问问题
392 次
1 回答
3
我假设您使用的是 WinForms,因为您没有提到 WPF。如果要控制关闭行为,则不能使用 MessageBox。您必须构建自己的屏幕来充当消息框并使用 ShowDialog 方法来显示它。您的屏幕可以处理 FormClosing 事件以检测 Windows 何时关闭:
private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
{
if (e.CloseReason == CloseReason.WindowsShutDown)
{
//...
}
}
因此,在这种情况下,您需要允许屏幕关闭,并可能对其他类型的关闭信号采取其他措施。要防止屏幕关闭,请将FormClosingEventArgs
参数上的 Cancel 标志设置为 true;
于 2013-06-18T01:16:16.420 回答