【问题标题】:Maximize application with two opened form使用两个打开的表单最大化应用程序
【发布时间】:2012-10-18 16:58:45
【问题描述】:

我的申请中有两个表格 第一个表单使用了第一个表单上显示的背景和秒表单,代码如下:

frsform _frsform=new frsform();     
_frsform.TopLevel = true;
_frsform.ShowInTaskbar = false;
_frsform.ShowDialog();

我使用此代码最小化两个打开的表单

 foreach (Form frm in Application.OpenForms)
 {
   frm.WindowState = FormWindowState.Minimized;
 }

但是当我点击任务栏最大化我的应用程序时,第二个表单被隐藏,我只看到第一个表单。

当我最大化应用程序时,我必须做什么才能同时查看这两个表单?(见第一个表单后面的第二个表单)

【问题讨论】:

  • 你的第一个表格是MDI表格吗?
  • @Neeraj Kumar Gupta:不,我不想使用 MDI 表单
  • 对话框应该永远被最小化。改用 Show(owner) 重载,传递“背景”表单。

标签: c# winforms


【解决方案1】:

当您调整大小时,下面将在您的第一个表单上捕获事件,然后允许您对第二个表单进行所需的调整:

   private void Form1_Resize(object sender, EventArgs e)
   {
       if (this.WindowState == FormWindowState.Maximised)

       {
              // add code here to show second form

       }
   }

【讨论】:

    【解决方案2】:

    您将“_frsform”显示为主窗体上的对话框。当您最小化“_frsform”时会自行关闭。所以最好使用“Show”而不是“Showdialog”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-12
      • 1970-01-01
      相关资源
      最近更新 更多