添加控件以控制控件内部

时间:2013-10-01 09:43:11

标签: c# visual-studio custom-controls tabcontrol windows-forms-designer

我正在尝试制作完整的自定义TabControl。

到目前为止,我的代码完美无缺,但是当我在Visual Studio设计器中查看我的TabControl时,我无法将控件添加到TabControl内部的TabPage控件中。尝试时,它只是将控件放在TabControl的顶部。

除非您通过手动编程向TabPage添加控件,即不使用Visual Studio的Designer,否则使用TabControl是没有意义的。

PasteBin Link to my Control's Code

以下是选项卡控件的图像,其中选择了不同的选项卡: Tab Page 1 Selected http://gyazo.com/0775c34f525c9c94e8adf5072357901c.png Tab Page 2 Selected http://gyazo.com/b8a759d3490a01128c8503577c6d709d.png

从上面的图片中可以看出,按钮没有放在标签页的控件集中,因为它漂浮在标签控件上方。

1 个答案:

答案 0 :(得分:0)

您可以在表格中使用设计工具箱中的Tabcontrol并根据需要放置控件。然后将下面提供的代码添加到您的代码中,这将有效。

假设您有自定义类,请使用此代码编写如下所示的构造函数。

 internal class MyCustomTabControl
 {
    public MyCustomTabControl(TabControl tabControlPassed)
        : base()
    {
        this.tabcontrol = tabControlPassed;
    }
    TabControl tabcontrol;
 }

在InitializeComponent()方法之后的主窗体初始化调用MyCustomTabControl初始化。初始化自定义tabcontrol时传递this.tabControl1

 public partial class TabForm : Form
 {       
    public TabForm()
    {
        InitializeComponent();
        MyCustomTabControl customTab = new MyCustomTabControl(this.tabControl1);
    }
 }

:)