【问题标题】:C# Adding tabs at runtime using Form's controlsC# 在运行时使用 Form 的控件添加选项卡
【发布时间】:2009-07-20 19:17:13
【问题描述】:
我想到了这个想法,您可以在表单上拥有一个选项卡控件,但不是在运行前定义每个选项卡控件,而是继承或使用另一个表单的控件。
基本上,一个选项卡控件位于运行前没有选项卡的主窗体上。当运行时出现时,我想创建选项卡,但每个选项卡上的控件将来自单独的已创建表单。
每个表单都是在运行之前创建的单独选项卡。
这可能吗?是这样,怎么样?
提前致谢
编辑
我正在使用 3.5
【问题讨论】:
标签:
c#
inheritance
controls
tabs
【解决方案1】:
首先创建一个用户控件并像设计常规表单一样对其进行设计,然后将其添加到您的 TabControl.TabPages
TabPage page = new TabPage("Title");
page.Controls.Add(new CustomUserControl()); //your user control
this.tabControl1.TabPages.Add(page);
【解决方案2】:
如果您要做的只是将控件从一个表单上的 TabControl 复制到另一个表单上的 TabControl:
- 实例化您要从中复制的表单
- 在该表单上找到 TabControl
- 遍历该 TabControl 内的 TabPages 上的控件
- 将您在该集合中找到的每个控件添加到要复制到的控件的选项卡中
- 关闭并处理您在步骤 1 中创建的表单