如何在MDI容器中显示子表单而不显示子表单中容器表单中控件的外观?

时间:2010-11-08 01:50:40

标签: c# .net-3.5 mdi mdichild mdiparent

在我的容器形式的项目中,我使用按钮打开子窗体,而不是条形菜单,但容器中的按钮始终显示在子窗体上 如何使按钮或任何其他控件形式位于子表单上方 我正在使用Visual Studio 2008专业版C#编程语言alt text

如此图像中的按钮假设为form1而不是在Form2(Child)中看到 以及容器中的其他控件

2 个答案:

答案 0 :(得分:2)

先生,我有

的最佳解决方案

创建新的空表单,然后设置此表单的以下属性

在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();
        }

你想要什么在后台添加到空表单....] 享受

答案 1 :(得分:0)

您应该使用ToolStripMenuStrip来致电您的子表单。在您的情况下,我假设您只需将Button拖放到Form1中。这就是按钮浮动的原因。

但是如果你坚持并且仍然不想使用ToolStrip和MenuStrip,你可以在显示子窗体后隐藏按钮。例如:

private void button1_Click(object sender, EventArgs e)
{
     Form2 f2 = new Form2();
     f2.MdiParent = form1;
     f2.Show();
     button1.Visible = false; // This will cause your button to be hidden.
}