我正在用C#编写Windows窗体应用程序。我需要能够将它带到前台。经过谷歌搜索和实验后,我得到了一个可行的解决方案,看起来有些怪异。

如果有的话,我想知道一种优雅的方法。我需要还原该应用程序并使其处于前台,无论它是否已最小化,还是未最小化,但都处于后台。

当前代码如下:

WindowState = FormWindowState.Minimized;
WindowState = FormWindowState.Normal;
BringToFront();
Focus();

最佳答案

您尝试过Form.Activate吗?

这段代码似乎可以满足您的要求,方法是将表单最小化后将其恢复为正常大小,然后激活它以设置焦点:

if (this.WindowState == FormWindowState.Minimized)
{
    this.WindowState = FormWindowState.Normal;
}

this.Activate();

警告:这很烦人!如您所说,如果它只是供您个人使用的应用程序,也许您可​​以使用它。 :)

07-24 12:52