HierarchicalDataTemplate クラス

定義

TreeViewItemMenuItem などの HeaderedItemsControl をサポートする DataTemplate を表します。

public ref class HierarchicalDataTemplate : System::Windows::DataTemplate
public class HierarchicalDataTemplate : System.Windows.DataTemplate
type HierarchicalDataTemplate = class
    inherit DataTemplate
Public Class HierarchicalDataTemplate
Inherits DataTemplate
継承

次の例で、ListLeagueListLeague オブジェクトのリストです。 各 League オブジェクトには、Name と、Division オブジェクトのコレクションがあります。 各 Division には、NameTeam オブジェクトのコレクションがあり、各 Team オブジェクトには Name があります。

<Window x:Class="SDKSample.Window1"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  Title="HierarchicalDataTemplate Sample"
  xmlns:src="clr-namespace:SDKSample">
  <DockPanel>
    <DockPanel.Resources>
      <src:ListLeagueList x:Key="MyList"/>

      <HierarchicalDataTemplate DataType    = "{x:Type src:League}"
                                ItemsSource = "{Binding Path=Divisions}">
        <TextBlock Text="{Binding Path=Name}"/>
      </HierarchicalDataTemplate>

      <HierarchicalDataTemplate DataType    = "{x:Type src:Division}"
                                ItemsSource = "{Binding Path=Teams}">
        <TextBlock Text="{Binding Path=Name}"/>
      </HierarchicalDataTemplate>

      <DataTemplate DataType="{x:Type src:Team}">
        <TextBlock Text="{Binding Path=Name}"/>
      </DataTemplate>
    </DockPanel.Resources>

    <Menu Name="menu1" DockPanel.Dock="Top" Margin="10,10,10,10">
        <MenuItem Header="My Soccer Leagues"
                  ItemsSource="{Binding Source={StaticResource MyList}}" />
    </Menu>

    <TreeView>
      <TreeViewItem ItemsSource="{Binding Source={StaticResource MyList}}" Header="My Soccer Leagues" />
    </TreeView>

  </DockPanel>
</Window>

この例は、HierarchicalDataTemplate を使うことで、他のリストを含むリスト データを簡単に表示できることを示しています。 次に示すのは、この例のスクリーンショットです。

HierarchyDataTemplate サンプルスクリーン ショット

コンストラクター

HierarchicalDataTemplate()

HierarchicalDataTemplate クラスの新しいインスタンスを初期化します。

HierarchicalDataTemplate(Object)

テンプレートの対象となる型を指定して、HierarchicalDataTemplate クラスの新しいインスタンスを初期化します。

プロパティ

AlternationCount

子項目の代替項目コンテナーの数を取得または設定します。

DataTemplateKey

DataTemplate の既定のキーを取得します。

(継承元 DataTemplate)
DataType

この DataTemplate が対象としている型を取得または設定します。

(継承元 DataTemplate)
Dispatcher

この Dispatcher が関連付けられている DispatcherObject を取得します。

(継承元 DispatcherObject)
HasContent

最適化されたコンテンツがこのテンプレートに含まれているかどうかを示す値を取得します。

(継承元 FrameworkTemplate)
IsSealed

このオブジェクトが不変の状態で変更不可能であるかどうかを示す値を取得します。

(継承元 FrameworkTemplate)
ItemBindingGroup

各子項目にコピーされる BindingGroup を取得または設定します。

ItemContainerStyle

各子項目の項目コンテナーに適用される Style を取得または設定します。

ItemContainerStyleSelector

各項目コンテナーに適用できるスタイルについて、スタイル選択のカスタム ロジックを取得または設定します。

ItemsSource

データ階層内の次のレベルを表すコレクションを検索する場所を示す、このデータ テンプレートのバインドを取得または設定します。

ItemStringFormat

データ階層の次のレベル内の項目が文字列として表示される場合に、その書式を指定する複合文字列を取得または設定します。

ItemTemplate

データ階層の次のレベルにある項目の表示方法を示すために、生成された DataTemplate (ItemTemplateHeaderedItemsControl など) の MenuItem プロパティに適用する TreeViewItem を取得または設定します。

ItemTemplateSelector

データ階層の次のレベルにある項目を表示するテンプレートの選択方法を示すために、生成された DataTemplateSelector (ItemTemplateSelectorHeaderedItemsControl など) の MenuItem プロパティに適用する TreeViewItem を取得または設定します。

Resources

このテンプレートのスコープ内で使用できるリソースのコレクションを取得または設定します。

(継承元 FrameworkTemplate)
Template

ライターがテンプレートを定義または適用するときに、テンプレートの XAML ノードを記録または再生するオブジェクトへの参照を取得または設定します。

(継承元 FrameworkTemplate)
Triggers

プロパティ値を適用するトリガー、または 1 つ以上の条件に基づいてアクションを実行するトリガーのコレクションを取得します。

(継承元 DataTemplate)
VisualTree

テンプレートのルート ノードを取得または設定します。

(継承元 FrameworkTemplate)

メソッド

CheckAccess()

呼び出し元のスレッドがこの DispatcherObject にアクセスできるかどうかを確認します。

(継承元 DispatcherObject)
Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
FindName(String, FrameworkElement)

このテンプレート内で定義された、指定した名前に関連付けられている要素を検索します。

(継承元 FrameworkTemplate)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
LoadContent()

テンプレートのコンテンツをオブジェクトのインスタンスとして読み込み、コンテンツのルート要素を返します。

(継承元 FrameworkTemplate)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
RegisterName(String, Object)

現在の名前スコープに新しい名前とオブジェクトのペアを登録します。

(継承元 FrameworkTemplate)
Seal()

テンプレートをロックし、変更できないようにします。

(継承元 FrameworkTemplate)
ShouldSerializeResources(XamlDesignerSerializationManager)

シリアル化プロセスが、このクラスのインスタンスの Resources プロパティの値をシリアル化する必要があるかどうかを示す値を返します。

(継承元 FrameworkTemplate)
ShouldSerializeVisualTree()

シリアル化プロセスが、このクラスのインスタンスの VisualTree プロパティの値をシリアル化する必要があるかどうかを示す値を返します。

(継承元 FrameworkTemplate)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)
UnregisterName(String)

XAML 名前スコープから名前とオブジェクトのマッピングを削除します。

(継承元 FrameworkTemplate)
ValidateTemplatedParent(FrameworkElement)

規則のセットに対してテンプレートが適用される親をチェックします。

(継承元 DataTemplate)
VerifyAccess()

呼び出し元のスレッドがこの DispatcherObject にアクセスできるように強制します。

(継承元 DispatcherObject)

明示的なインターフェイスの実装

INameScope.FindName(String)

指定された識別名を持つオブジェクトを返します。

(継承元 FrameworkTemplate)
IQueryAmbient.IsAmbientPropertyAvailable(String)

指定されたアンビエント プロパティを現在のスコープで使用できるかどうかを照会します。

(継承元 FrameworkTemplate)

適用対象