SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Silverlight/WPFで使える逆引きTips集

Silverlight/WPFで使える逆引きTips集
――タブ機能

(7) TabControlとTabItemコントロール

  • X ポスト
  • このエントリーをはてなブックマークに追加

01.タブを追加する

 XAMLでTabControlにタブを追加するには、TabItem要素を使用します。

 また、コードからタブを追加するには、TabControlのItemsプロパティが持つAddメソッドでTabItemクラスのインスタンスを指定します。

 タブに表示する文字は、TabItemクラスHeaderプロパティで指定します。

 下記は、[追加]ボタンを押すたびにタブを追加する例です。

タブを追加する例
タブを追加する例
XAMLの例
<StackPanel Height="241">
    <StackPanel Orientation="Horizontal">
        <Button Name="btnAdd" Content="追加" Width="50" />
    </StackPanel>
    <TabControl Name="TabControl1" Margin="0,3,0,0" Height="210">
        <!-- TabControl に TabItem を追加 -->
        <TabItem Header="TabItem1" Name="TabItem1">
            <Grid />
        </TabItem>
    </TabControl>
</StackPanel>
VBの例
' [追加]ボタンクリック時の処理
Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles btnAdd.Click
    Dim tab As New TabItem()

    tabCount += 1
    tab.Header = "TabItem-" & tabCount.ToString()

    '新しいタブアイテムを追加
    TabControl1.Items.Add(tab)
End Sub
C#の例
// [追加]ボタンクリック時の処理
private void btnAdd_Click(object sender, RoutedEventArgs e)
{
    TabItem tab = new TabItem();

    tabCount += 1;
    tab.Header = "TabItem-" + tabCount.ToString();

    // 新しいタブアイテムを追加
    tabControl1
}
ポイント

 タブを追加するにはItemsプロパティのAddメソッドを使用する。

 タブに表示する文字はHeaderプロパティに設定する。

02.タブを挿入する

 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);
}
ポイント

 タブを挿入するにはItemsプロパティのInsertメソッドを使用する。

次のページ
03.タブを削除する

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Silverlight/WPFで使える逆引きTips集連載記事一覧

もっと読む

この記事の著者

HIRO(ヒロ)

HIRO's.NETのHIROです。とある半導体工場のSEです。VB.NET, C#, PowerShellによるプログラミングを楽しんでいます。最近はBlog でPowerShellについて書いています。2008/07/07にPowerShell from Japan!!というサイトを立ち上げまし...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/5704 2011/02/01 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング