TabControl に既存のタブがある場合、任意の位置にタブを挿入するには、Items プロパティの Insert メソッドを使用します。
Insert メソッドの第1引数にはタブの挿入先となるインデックス番号(先頭はインデックス番号=0となります)を、第2引数には TabItem クラスのインスタンスを指定します。
下記は、[挿入]ボタンをクリックすると、左から数えて2番目の位置(インデックス番号=1)に新しいタブを挿入する例です。
XAMLの例
<StackPanel Height="241"> <StackPanel Orientation="Horizontal"> <Button Name="btnInsert" Content="挿入" Width="50" /> </StackPanel> <TabControl Name="TabControl1" Margin="0,3,0,0" Height="210"> <TabItem Header="TabItem1" Name="TabItem1"> <Grid /> </TabItem> <TabItem Header="TabItem2" Name="TabItem2"> <Grid /> </TabItem> <TabItem Header="TabItem3" Name="TabItem3"> <Grid /> </TabItem> </TabControl> </StackPanel>
VBの例
'[挿入]ボタンクリック時の処理 Private Sub btnInsert_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles btnInsert.Click '新規タブの作成 Dim tab As New TabItem tab.Header = "New Tab" 'タブの挿入 TabControl1.Items.Insert(1, tab) End Sub
C#の例
// [挿入]ボタンクリック時の処理 private void btnInsert_Click(object sender, RoutedEventArgs e) { // 新規タブの作成 TabItem tab = new TabItem(); tab.Header = "New Tab"; // タブの挿入 tabControl1.Items.Insert(1, tab); }