在父表单最小化时显示无模式表单的“标题栏”

时间:2014-12-29 23:32:09

标签: c# forms

我正在尝试在我的应用程序中实现一些补充视图,我希望对它们有更好的布局控制。我不知道如何用文字解释我想要的功能是什么,所以我通过一些photoshop帮助完成了,希望你能帮我实现它。

我的应用程序现在看起来像这样:

(我需要声望发布图片所以..抱歉链接) http://i59.tinypic.com/2ikv8m1.jpg

当我最小化在前一个图像中聚焦的无模式窗体时,我希望能够在我的主窗体内看到它(并处理它以最大化或关闭),如下图所示(制作它的Photoshop)

http://i58.tinypic.com/1e28go.jpg

希望有人能带领我找到解决方案并感谢您的支持。

编辑:我需要能够将该表单移到我的主表单之外,甚至可以移动到不同的监视器。

2 个答案:

答案 0 :(得分:0)

如果您不想使用MDI方法,请将无模式Form的TopLevel设置为false,并在显示之前将其添加到主Forms Controls集合中:

        Form frm = new Form();
        frm.TopLevel = false;
        this.Controls.Add(frm);
        frm.Show();

*显然将Form更改为无模式的正确类型。

答案 1 :(得分:0)

如果我理解你要做什么,你想要最小化某个表格,但仍然在你的应用程序中看到它(我假设像Excel或Word)

你可以做类似于Idle_Mind所说的内容,但是将它们都包含在Form中而不是父类中。 Form fParent = new Form(); fParent.Dock = DockMode.Fill;//i think this is the syntax. Use this if you want the form to fill to the screen Form fChild = new Form(); fChild.TopLevel = false; fParent.Controls.Add(fChild); fChild.Show();

这里,它应该最小化到父窗体的左下部分。然后,您可以将父级调整为您想要的大小。