2

我的应用程序中有一个 TabControl,但我想允许用户创建一个新选项卡,但是在创建新选项卡时它包含一些默认表单控件。创建的所有新选项卡将包含每个选项卡相同的基本表单控件(想想 NotePad++,其中每个新选项卡都有一个文本编辑器)。

是否有某种设计模式或模板可供我使用,以便在创建新选项卡时包含我的应用程序所需的必要表单控件?

只是为了传达一些含义:

  1. 用户点击“新标签”
  2. 新选项卡加载了文本编辑器和树视图
  3. 用户再次点击“新标签”
  4. 新选项卡加载了文本编辑器和树视图

...并且对于用户需要的任意数量的选项卡重复该过程。

4

1 回答 1

1

就像评论建议您应该创建一个UserControl,假设您调用它TextEditorControl。然后您可以使用以下方法在按钮单击时添加标签页

private void AddTabPage()
{
    // Add new tab page and dock fill.
    TabPage tab = new TabPage(Path.GetFileName(fullPath));
    TextEditorControl editor = new TextEditorControl();
    editor.Dock = System.Windows.Forms.DockStyle.Fill;

    // Add the new tab to the tab control.
    tab.Controls.Add(editor);
    fileTabs.Controls.Add(tab);
    fileTabs.SelectedTab = tab;
}

我希望这有帮助。

于 2013-07-16T10:28:52.920 回答