0

我有一个带有按钮的父表单,并且在按钮的单击事件中我想打开一个新表单。

Form2 form2= new Form2();
form2.Show();

但是,form2 作为单独的进程打开。我希望表单在父表单中打开。

谷歌搜索时,我发现 MDI 已被弃用。那你能给我推荐一个好方法吗?

4

2 回答 2

3

谷歌搜索时,我发现 MDI 已被弃用

这就像马克吐温的名言:“关于我死亡的报道被大大夸大了”。MDI 内置在 Windows 中,许多旧程序都依赖它。它已经存在了超过 25 年,并且不会很快消失。

程序员喜欢在不喜欢某个功能时随意宣布已弃用的内容。当然,没有人对 MDI 如此着迷。WPF 没有实现它并没有使它被弃用,这会使 shell 通知图标也被弃用,它们当然还活着而且很好。MDI 是一种窗口模型,用于处理 25 年前用户使用的那种监视器。并且 640 x 480 显示器不会为窗户留下太多空间。找到一种使重叠窗口易于管理的方法是其主要目标。

在我们今天拥有的巨大显示器上仍然使用它没有多大意义。对接布局更加明智。Visual Studio 就是一个很好的例子。如果您不想自己创建一个库,则需要购买支持它的库。Weifenluo 的 DockPanelSuite 非常受欢迎,而且价格合适。

于 2013-08-25T14:02:56.107 回答
2
Form f = new Form();
f.TopLevel = false;
f.Visible = true;
Controls.Add(f);

enter image description here

于 2013-08-25T14:01:02.797 回答