我在一个MDI窗体中有一个面板,面板中有一些控件。当我打开MDIChild表单时,表单会移到面板后面。我尝试了forms.BringtoFront()和panel.SendtoBack().But都不起作用。然后我将面板的setchildIndex设置为0,也不起作用。
有没有办法让面板总是在所有的窗体后面?
谢谢
发布于 2011-03-14 04:22:41
问题是,MDI子级的容器是面板的同级。面板要么在该容器的顶部,要么在它的后面。
您希望面板与MDI子组件位于同一容器中,但我认为这是不可能的。MDI容器只包含MDI子项,不包含其他任何内容。
简而言之,我认为MDI不会满足您的需求。
发布于 2013-06-22 16:32:42
创建一个新的空表单,然后在Form_load事件中设置此表单的以下属性
private void bg_Load(object sender, EventArgs e)
{
this.ControlBox = false;
this.FormBorderStyle = FormBorderStyle.None;
this.WindowState = FormWindowState.Maximized;
}然后,在MDI窗体load事件中编写以下代码
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();
}在背景中添加任何您想要的内容,将其添加到空表单中...
发布于 2011-03-14 08:51:36
您能否将面板放入MDI子窗口,并确定其在MDI父窗口中的位置和大小?然后,在您的MDI父窗口中,一次只能打开一种类型的MDI子窗口,其中包含您的面板。
https://stackoverflow.com/questions/5291873
复制相似问题