C#使用Form的控件在运行时添加选项卡

我已经想到了这个想法,你可以在表单上有一个选项卡控件,但不是在运行时之前定义每个选项卡控件,而是inheritance或使用另一个表单的控件。

基本上,在运行时之前没有选项卡的主窗体上有一个选项卡控件。 当运行时出现时,我想创建选项卡,但每个选项卡上的控件将来自单独的已创建表单。

每个表单都是在运行时之前创建的单独选项卡。

这可能吗? 是这样,怎么样?

提前致谢

编辑我正在使用3.5

首先创建一个用户控件并像常规表单一样设计它,然后将其添加到TabControl.TabPages

TabPage page = new TabPage("Title"); page.Controls.Add(new CustomUserControl()); //your user control this.tabControl1.TabPages.Add(page); 

如果您要做的就是将控件从一个窗体上的TabControl复制到另一个窗体上的TabControl:

  1. 实例化要从中复制的表单
  2. 在该表单上找到TabControl
  3. 通过TabControl中的TabPages迭代控件
  4. 将您在该集合中找到的每个控件添加到要复制到的控件中的选项卡
  5. 关闭并处置您在步骤1中创建的表单

对的,这是可能的。 您必须将控件添加到TabPage,然后将TabPage添加到TabControl.TabPages