1

我有一个 WinForm 应用程序,当它打开并且我尝试重新启动我的计算机时,我的计算机只是挂起并且没有重新启动。我必须实际关闭 WinForm 应用程序,然后重新启动,然后我的计算机就会重新启动。

我能做些什么来解决这个问题?

    private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    {
        if (!BoolShouldThisClose)
        {
            e.Cancel = true;
            this.Visible = false;
        }
    }
4

2 回答 2

1

请务必注意 CloseReason,这样您就不会阻止 Windows 尝试关闭您的表单。像这样:

    protected override void OnFormClosing(FormClosingEventArgs e) {
        if (e.CloseReason == CloseReason.UserClosing) {
            this.Hide();
            e.Cancel = true;
        }
        else base.OnFormClosing(e);
    }
于 2010-09-17T17:51:43.943 回答
0

您是否在应用程序中生成了线程并且它们正在运行?如果是这样,请确保将它们设置为 IsBackground = true。

于 2010-09-17T17:44:17.847 回答