我的应用程序中有一个TabControl但我想允许用户创建一个新选项卡,但是当创建新选项卡时,它包含一些默认的表单控件。创建的所有新选项卡将包含每个选项卡相同的基本表单控件(想想NotePad ++,其中每个新选项卡中都有一个文本编辑器)。
我是否可以使用某种设计模式或模板,以便在创建新标签时,它将包含我的应用程序所需的必要表单控件?
只是为了表达一些意义:
...并且针对用户需要的任意数量的选项卡重复这些过程。
答案 0 :(得分: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;
}
我希望这会有所帮助。