2011-03-13 51 views
2

我有一个MDI窗体中的面板,并在面板上有一些控件。 当我打开MDIChild窗体时,窗体会放在面板后面。 我试过forms.BringtoFront()和panel.SendtoBack(),但没有任何效果。 然后我把panel的setchildIndex设置为0,也没有工作。MDIchild窗体背后的面板

有什么办法始终保持面板的所有形式的背后?

感谢

+1

为什么要在MDI容器中安装面板?您打算将MDI儿童放入MDI容器中。 – 2011-03-13 19:49:56

+0

是的,我知道,但我想MDI父要像桌面或主页我的应用程序,也用户可以从主菜单 – AlaaL 2011-03-13 20:16:30

+0

打开另一个MDI孩子们,我想说这不仅仅是面板,如果你把任何控制在mdi父母身上,它保持在其他形式的顶部。 – AlaaL 2011-03-13 20:17:49

回答

1

的问题是,对于该MDI子容器是面板的兄弟姐妹。该面板位于该容器的顶部或其后面。

您希望面板是在作为MDI子同一容器中,但我不相信这是可能的。 MDI容器容纳MDI儿童,没有别的。

总之,我不认为MDI是想给你你需要什么。

+0

我认为你是对的,mdi不会帮助我。谢谢任何方式 – AlaaL 2011-03-13 21:01:04

0

你能不能把面板到MDI子窗口和MDI父内固定其位置和大小?然后,只需在MDI父项中一次打开一个包含面板的MDI子窗口即可。

0

Show方法后,我刚添加的BringToFront方法。

适合我。

1

创建一个新的空表格,然后经过设置这种形式的下列财产在Form_Load事件

private void bg_Load(object sender, EventArgs e) 
{ 
    this.ControlBox = false; 
    this.FormBorderStyle = FormBorderStyle.None; 
    this.WindowState = FormWindowState.Maximized; 
} 

然后,在MDI窗体加载事件中写入以下代码

private void Main_Load(object sender, EventArgs e) 
{ 
    bg bg = new bg(); // create object of empty form my empty form name is "bg" 
    bg.MdiParent = this; 
    bg.Show(); 
} 

不管你想要在后台添加到空白表格中......

相关问题