ヘッダー付きコントロールの描画
ヘッダー付きコントロールには、コントロールのラベルを指定するためのヘッダー プロパティがあります。ヘッダー プロパティは、テキスト文字列のように単純になることも、Microsoft .NET Framework オブジェクトのように複雑になることもあります。また、ヘッダー付きコントロールの中には、アイテムのコンテンツやコレクションを表示するものもあります。たとえば、[TabControl] 内の [TabItem] は、ヘッダー付きコンテンツ コントロールです。[ToolBar] と [MenuItem] は、どちらもヘッダー付きアイテム コントロールです。
次の手順では、アイテム コントロール (TabControl) 内にヘッダー付きコンテンツ コントロール (TabItem コントロール) を作成する方法について説明します。この手順は、MSDN の「HeaderedContentControl 型」の「型」一覧にあるヘッダー付きコンテンツ コントロールにも当てはまります。ヘッダー付きアイテム コントロールの一覧は、MSDN の「HeaderedItemsControl 型」にあります。
ヘッダー付きコンテンツ コントロールを作成するには
Microsoft Expression Blend アプリケーション ウィンドウの左側にある [ツール] パネルで、[アセット]
をクリックします。[コントロール] カテゴリの一覧から、[TabControl]
を選択します。
[アセット] ボタンの下に [TabControl] コントロールのアイコンが選択された状態で表示され、アートボードに TabControl コントロールを追加できるようになります。
ヒント :
よく使用するユーザー インターフェイス (UI) の要素 (Button コントロールなど) は、すばやく追加できるように、[アセット] ボタンの下のドロップダウン リストに表示されます。
アートボードに TabControl オブジェクトを追加するには、[TabControl] コントロールのアイコンをダブルクリックします。既定では、TabControl には 2 つの TabItem オブジェクトが含まれます。
アートボードの既定の場所 (左上) に既定のサイズで作成した TabControl オブジェクト
ヒント :
必要に応じて、他の [TabItem] オブジェクトを [TabControl] オブジェクトに追加できます。このためには、[オブジェクトとタイムライン] パネルで [TabControl] オブジェクトを右クリックして、[TabItem の追加] をクリックします。
アートボード上で Ctrl キーを押しながら [TabControl] オブジェクトの右下のサイズ変更ハンドルをドラッグして、上端にタブを 3 つ表示できるだけの大きさに拡大します。
ヒント :
TabControl のサイズを変更する別の方法として、[プロパティ] パネルの [レイアウト] カテゴリにある [Height] と [Width] のプロパティを設定することもできます。
[TabItem] オブジェクトの 1 つに名前を付けるには、[オブジェクトとタイムライン] パネルでそのオブジェクトを選択し、[プロパティ] パネルの [共通プロパティ] カテゴリにある [Header] プロパティの名前を入力します。たとえば、最初の [TabItem] オブジェクトに「個人情報」という名前を付けます。
ヒント :
Image コントロールなどの他のコントロールを TabItem のヘッダーとして使用することもできます。まず、[オブジェクトとタイムライン] パネルで [TabItem] オブジェクトを展開し、[Header] オブジェクトをダブルクリックしてアクティブにします。[ツール] パネルか、[プロジェクト] パネルから Image コントロールを追加します。
[TabItem] オブジェクトの 1 つにコンテンツを追加するには、[オブジェクトとタイムライン] パネルでそのオブジェクトをダブルクリックしてアクティブにします。
[ツール] パネルの [StackPanel]
をダブルクリックして、[StackPanel] オブジェクトを [TabItem] オブジェクトに追加します。
[オブジェクトとタイムライン] パネルで [StackPanel] オブジェクトをダブルクリックしてアクティブにします。これで、[TabItem] オブジェクトにいくつでもオブジェクトを追加できるようになります。たとえば、[ツール] パネルから [TextBlock] コントロールや [ListBox] コントロールを追加できます。
TabControl オブジェクトに追加された子オブジェクト
TabControl 全体に罫線とヘッダーを追加する場合は、他のヘッダー付きコンテンツ コントロールである GroupBox コントロールを使用できます。まず、[オブジェクトとタイムライン] パネルで [LayoutRoot] オブジェクトをアクティブにしてから、[アセット] パネルの [GroupBox] コントロールを選択します。次に、マウスを使ってアートボードに [TabControl] よりやや大きめのコントロールを描画します。
[TabControl] オブジェクトを [GroupBox] オブジェクトの子オブジェクトにするには、[オブジェクトとタイムライン] パネルで [TabControl] オブジェクトを [GroupBox] オブジェクトにドラッグします。
TabControl オブジェクトを GroupBox オブジェクトにドラッグ
[オブジェクトとタイムライン] パネルで [GroupBox] オブジェクトのタイトルを選択して変更し、[プロパティ] パネルの [共通プロパティ] カテゴリある [Header] プロパティを変更します。
F5 キーを押してプロジェクトをビルドし、作成されたアプリケーションを確認します。
[ListBox] オブジェクトで選択されたアイテムに反応するためのコードの例については、MSDN の「GroupBox のサンプル」を参照してください。サンプル コードは、「Windows SDK .NET Framework 3.0 Samples」から入手できる "WPFSamples.exe" パッケージに含まれています。