1

我有一组行为良好的 Windows 窗体,它们嵌入在我无法完全控制的 DLL 中。这些是我试图在一个界面下统一的单独遗留项目的一部分,这样应用程序就不会感觉像弹出地狱。

我认为这样做的方法是创建一个 MDI 父窗体,并将其他窗体作为其子窗体打开。根据需要,一次形成一个孩子。当他们导航时,一个 MDI 文档将关闭,而另一个将打开。

但是,父 MDI 表单需要导航控件。我想使用一个tabcontrol。是否可以将选项卡控件附加到父 MDI 表单?我能找到的所有文档和示例都是工具条,但这对于我想要完成的任务来说太有限了。

没有可显示的代码,抱歉。我不确定我想要的是否可能。

更新如下所示,我真的不需要 MDI 来完成我打算做的事情。但是,保留原样。

4

1 回答 1

2

如果我没看错,那么我认为 MDI 不是您要寻找的,因为您想使用 TabControl 导航到每个表单。

如果您将TopLevel其设置为 false 并从表单中移除边框,则实际上您将表单变成了 UserControl,并且可以将其添加到您选择的 TabPage 面板中:

  Form f = new Form();
  f.TopLevel = false;
  f.FormBorderStyle = FormBorderStyle.None;
  f.Dock = DockStyle.Fill;
  tabPage1.Controls.Add(f);
  f.Visible = true;

更改Form为您从 DLL 引用的表单。

于 2013-01-21T20:22:15.377 回答