Controls.Add(tabPage)与TabPages.Add(tabPage)

时间:2016-09-08 19:00:25

标签: c# winforms windows-forms-designer

要在winform应用程序中创建新标签,我在msdn中找到了这个:

private System.Windows.Forms.TabPage tabPage1;
this.tabPage1 = new System.Windows.Forms.TabPage();
this.tabControl1.Controls.Add(this.tabPage1);

但是当我从Form1.cs [Design]手动添加一个标签时,Visual Studio会自动在Form1.Designer.cs中创建一个新选项卡:

tabControl1.Controls.Add(tabPage1)

那么,tabControl1.TabPages.Add(tabPage1);String之间的主要区别是什么?

1 个答案:

答案 0 :(得分:3)

没有区别。以下是TabPageCollection.Add方法的source code

public void Add(TabPage value) {
    if (value == null) {
        throw new ArgumentNullException("value");
    }
    owner.Controls.Add(value);
}

在上面的代码中,owner是拥有TabControl的{​​{1}}。

使用TabPageCollection的好处在于5个不同的重载,它提供了将标签页添加到TabPageCollection