MDI子窗体由带有属性停靠填充的面板覆盖

时间:2019-03-13 11:48:24

标签: c# winforms mdi mdichild mdiparent

  

说明

  1. 我有主表单( Home ),并且 IsMDIContainer 属性设置为true。
  2. 然后,我在表单上添加了一个面板并将其 DOCK 属性设置为 填充
  3. 之后,我创建了子窗体(产品)并在主窗体上打开 单击按钮。
  

我面临的问题

当我点击按钮打开产品时,我看不到任何表格。要么它被面板覆盖,要么发生了我不知道的其他事情。

  

我尝试过的事情

  1. HOME 表单的 IsMDIContainer 属性更改为false

  2. 将面板DOCK更改为底部(用于测试)

  3. 再次将 IsMDIConatiner 设置为true,我得到了表格。

  

我想要什么?

我希望该面板填充 DOCK ,并希望MDI父级和子级功能正常运行

enter image description here

1 个答案:

答案 0 :(得分:0)

  

将子窗体的TopMost属性设置为true并将ShowOnTaskBar设置为false,我已将其修复

  1. 将窗体的任务栏上的显示属性设置为false
  2. 在窗体调整大小后调用方法,检查FormWindowState
  3. 如果将其最小化,则将子窗体的TopMost属性设置为true

        private void Form1_Resize(object sender, EventArgs e)
        {
            Form minimizedForm = sender as Form;
            if (minimizedForm.WindowState == FormWindowState.Minimized)
            {
    
                minimizedForm.TopMost = true;
            }
        }