2016-09-08 7 views
3

対Controls.Add(タブページ)私はmsdnでこれを見つけた:Winフォームアプリケーションで新しいタブを作成するにはTabPages.Add(タブページ)

string title = "TabPage " + (tabControl1.TabCount + 1).ToString(); 
TabPage tabPage1 = new TabPage(title); 
tabControl1.TabPages.Add(tabPage1); 

しかし、私はForm1.csのから手動でタブを追加[デザイン] Visual Studioは自動的に新しいタブのForm1.Designer.csでこれを作成します。

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

ので、tabControl1.Controls.Add(tabPage1)tabControl1.TabPages.Add(tabPage1);との主な違いは何ですか?

+1

ない差にタブページを追加するために提供する5つの異なるオーバーロードです。 Forms/winforms/Managed/System/WinForms/TabControl.cs、7bc75a420d7bf90b、リファレンス)。私は前者が型付きの 'TabPage'リストをエミュレートするのでより便利だと思います。 –

答えて

3

違いはありません。ここでsource codeTabPageCollection.Add方法のためのものである:上記のコードで

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

ownerTabPageCollectionを所有TabControlあります。 [ソース](http://referencesource.microsoft.com/#System.Windows -

TabPageCollectionを使用することの利点は、基本的にTabControl.

+0

クラスの契約/振る舞いを記述するためにソースコード(実装)を使用すべきではありません:) –

+0

@IvanStoev私は証拠としてそれを使用しました;) –

+0

ちょうど冗談 - 私はコメントと同じものを入力していました。あなたを見てうれしい、しばらくの間連絡が取れていない(私は他のエリアに移動した)。あなたがうまくやってくれることを願います! –

関連する問題