2010年9月20日 星期一

WinForm窗体FormClosing事件导致无法关机

使用C#做桌面开发,当点击右上角的关闭按钮时,希望程序不是关闭而是最小化到通知栏的时候,也许我们会使用 FormClosing 事件中来取消窗体的关闭。但这也会导致一个问题就是当程序运行的时候如果关闭电脑,则电脑无法正常关机。我么可以用以下方法来解决:

private void Form_FormClosing(object sender, FormClosingEventArgs e)
{
if (e.CloseReason.ToString() == "UserClosing")
{
e.Cancel=true
}
}
因为用户点击程序关闭和电脑控制程序关闭的“关闭窗体原因”是不一样的,所以可以利用此方法来解决。

沒有留言:

張貼留言