如何隐藏c#.net中的mdi子表单?

时间:2009-01-30 06:08:17

标签: .net-3.5

我想要在MDI中隐藏多个子窗体的代码。每当我点击子表单时,它必须在前面。其他表单将自动隐藏。我怎样才能做到这一点?请任何人回复我。

提前致谢

2 个答案:

答案 0 :(得分:2)

如果您观看MdiChildActivate事件,则会隐藏所有非活动的MDI子项:

private void MDIMain_MdiChildActivate(Object sender, EventArgs e) {

   foreach(From f in this.MdiChildren)
   {
     if(this.ActiveMdiChild != f)
       f.Hide();
    }

}

答案 1 :(得分:0)

在Windows中,只有在任何时间点都处于活动状态的表单。因此,当用户点击一个表单时,如果将其设置为活动状态,则应自动完成您的要求。

如果'frmObj'是您的子表单,只需在其上调用frmObj.Activate()方法即可。

您也可以尝试将WindowState属性(frmObj.WindowState)设置为最大化或任何您喜欢的。