タブが選択されたことを知る

スポンサーリンク

タブが選択されたことを知るには、TabControl の SelectionChanged イベントを使用します。

また「どのタブが選択されたのか」を知るには、TabControl のSlectedIndex プロパティを使用して、選択されたタブのインデックスを取得します。

下記は、タブが選択されたことを知る例です。

タブが選択されると、「○番目のタブが選択されました」というメッセージを表示します。

タブが選択されたことを知る例

XAMLの例

<StackPanel>
    <TabControl Name="TabControl1" Height="235">
        <TabItem Header="TabItem1" Name="TabItem1">
            <Grid />
        </TabItem>
        <TabItem Header="TabItem2" Name="TabItem2">
            <Grid />
        </TabItem>
        <TabItem Header="TabItem3" Name="TabItem3">
            <Grid />
        </TabItem>
    </TabControl>
    <TextBlock Name="TextBlock1" />
</StackPanel>

VBの例

'初期化処理
'イベントハンドラーの追加
Private Sub Window_Initialized(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Initialized
    'タブが選択されたことを知るイベントハンドラーの追加
    AddHandler TabControl1.SelectionChanged, AddressOf TabControl1_SelectionChanged
End Sub

' 選択されたタブの情報を表示する
Private Sub TabControl1_SelectionChanged(ByVal sender As System.Object, ByVal e As System.Windows.Controls.SelectionChangedEventArgs)
    '選択されたタブの番号を取得
    Dim selectedIndex As Integer = TabControl1.SelectedIndex + 1

    '選択されたタブの情報を表示
    TextBlock1.Text = selectedIndex.ToString() + "番目のタブが選択されました"
End Sub

C#の例

public Window6()
{
    InitializeComponent();

    // タブが選択されたことを知るイベントハンドラーの追加
    tabControl1.SelectionChanged += new SelectionChangedEventHandler(tabControl1_SelectionChanged);
}


/// 選択されたタブの情報を表示する
private void tabControl1_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    // 選択されタブの番号を取得
    int selectedIndex = tabControl1.SelectedIndex + 1;

    // 選択された他部の情報を表示
    textBlock1.Text = selectedIndex.ToString() + "番目のタブが選択されました";
}
タイトルとURLをコピーしました