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);
}
