【问题标题】:C# Windows Form start up always minimizedC# Windows 窗体启动时总是最小化
【发布时间】:2014-10-06 03:44:54
【问题描述】:

我开发了一个 C# Windows 窗体。 起初,Windows 窗体工作正常。 但是,有一天 Windows 窗体启动时总是最小化,我不知道。 我检查了WindowStateNormal 而不是Minimized。 怎么解决,谢谢!


编辑:

我注释每个代码块以缩小范围以定位问题点。 我发现我在 MainForm 中使用了Drive Detector。 创建该实例时,调用 Window 表单必须作为参数传递给构造函数。 否则,Drive Detector 将创建一个隐藏表单。但是,MainForm 将被最小化。

以下代码不会创建隐藏表单。

driveDetector = new DriveDetector(this);

下面的代码会创建一个隐藏的窗体,它会干扰调用 Windows 窗体。

driveDetector = new DriveDetector();

【问题讨论】:

  • 这是从什么时候开始的?如果你使用颠覆系统,你可以看看两次提交之间发生了什么变化......
  • @CommuSoft 这是个好主意。不幸的是,我没有使用任何版本控制系统....

标签: c# winforms


【解决方案1】:

尝试在表单加载事件中添加此代码并测试

this.WindowState = FormWindowState.Normal;

【讨论】:

    【解决方案2】:

    如果您希望默认全屏打开窗口,您应该使用WindowState = FormWindowState.Maximized。您可以在 Form load 事件中以编程方式执行此操作。

    还有其他各种可用选项,您可以从中控制如何打开 Windows 窗体。

    【讨论】:

    • 我将WindowState 更改为Maximized,但它也被最小化了。它在后台最大化。
    • 如果我将TopMost设置为true,问题就解决了。但我不希望表单始终位于顶部...
    • Form 的IsMdiContainer 属性为假。
    • 您还有其他申请表格吗?还是只有这个?
    • 我的应用中有很多表单,问题出现在主表单上。
    【解决方案3】:

    1.检查您是否将表格的尺寸设置为较小。

    2.尝试重新构建您的解决方案。

    3.从表单的事件属性中添加表单加载事件并添加以下代码

    this.WindowState = FormWindowState.Normal;

    【讨论】:

      【解决方案4】:

      尝试在表单激活事件中进行

          bool bIsLoaded = false;
          private void Form1_Activated(object sender, EventArgs e)
          {
              if (!bIsLoaded)
              {
                  this.WindowState = FormWindowState.Maximized;
                  bIsLoaded = true;
              }
          }
      

      【讨论】:

        【解决方案5】:

        只要尝试从代码级别添加它来说出windows状态如下。

            private void Form1_Load(object sender, EventArgs e)
            {
                this.WindowState = FormWindowState.Normal;
            }
        

        【讨论】:

          【解决方案6】:

          我注释每个代码块以缩小范围以定位问题点。 我发现我在 MainForm 中使用了Drive Detector。 创建该实例时,调用 Window 表单必须作为参数传递给构造函数。 否则,Drive Detector 将创建一个隐藏表单。但是,MainForm 将被最小化。

          以下代码不会创建隐藏表单。

          driveDetector = new DriveDetector(this);
          

          下面的代码会创建一个隐藏的窗体,它会干扰调用 Windows 窗体。

          driveDetector = new DriveDetector();
          

          【讨论】:

            【解决方案7】:

            试试这个:

            Topmost = true;
            

            在您的 Form_Load 事件中

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2015-02-21
              • 2011-08-14
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2010-12-21
              相关资源
              最近更新 更多