Windows Form 2在关闭Form 1时最小化

时间:2015-11-30 14:45:38

标签: c# forms winforms

这里有个奇怪的问题。我有一个登录表单,当用户单击按钮时会打开注册表单:

Register registration = new Register();
registration.Show();

此时,第二个表单在Login表单前打开 - 两个窗口都是打开的,没有最小化,这很好。但是,当用户完成注册并且注册成功时:

if (success)
{
    this.Close(); //('this' being the Registration form)
}

注册表格关闭(好),但登录表单最小化,我不知道为什么。理想情况下,我希望表单始终保持打开状态,而不必单击任务栏图标再次在屏幕上显示。

我想它还有比我提供的代码更多的东西,如果需要的话,很乐意提供更多代码。只是不确定问题在哪里。

3 个答案:

答案 0 :(得分:0)

虽然我不知道为什么会这样(但不应该),{{1}}应该是更好的选择。

答案 1 :(得分:0)

你也可以试试showDialog(this)

答案 2 :(得分:0)

我现在遇到了同样的问题,甚至在使用ShowDialog()时也会发生。我做了一些研究,花了很多时间弄清楚它是什么之后,才发现以主要形式将FormBorderStyle设置为System.Windows.Forms.FormBorderStyle.FixedToolWindow(或SizableToolWindow)是可行的。我还遇到(并且可以重现)类似的问题,即使设置了FixedToolWindow,即使子窗体也可以最小化,所以对我来说,唯一的“真实”解决方案是不要在任何窗体上使用此边框样式。

将其更改为任何其他FormBorderStyle值都可以完全解决此问题,尽管那样显然您将无法再使用此边框样式。

在这里留下这个答案是为了帮助其他偶然发现这个问题的人,因为这个问题显然在2019年仍然存在。