我正在创建一个继承TabControl的工具。这意味着像TabControl一样运行,但增加了一些功能。但是,每次我将TabControl或我的工具拖到表单上时,都会立即创建2个TabPages。我不希望在设计器中创建这两个tabpages,如何防止这两个tabpages被创建?
答案 0 :(得分:1)
这是一个很好的问题;不幸的是,似乎没有好的答案。
默认情况下会为任何TabControl
创建两个页面,而不仅仅是您的子类。
它不在您的代码中,也不在MSDN sources中。
汉斯'评论我认为有一个'设计师模板'表单(或顶级控件类,例如UserControl
)用于在表单InitializeComponent
代码中添加额外的初始化代码。我们不应该乱用这段代码!
在Form1.Designer.cs
代码中,使用愚蠢的名称创建标签,作为类范围的控件并添加到选项卡中。
最简单的解决方案是删除设计器中的页面手动。
我能想到的唯一其他解决方法是清除页面,例如在表单的构造函数中:
public Form1()
{
InitializeComponent();
customTab1.TabPages.Clear();
}
注意:在代码中创建并添加TabPages
时,默认TabControl
未添加。