HierarchicalDataTemplate クラス

定義

DataTemplateHeaderedItemsControlなど、TreeViewItemをサポートするMenuItemを表します。

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 オブジェクトには、 NameDivision オブジェクトのコレクションがあります。 各 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)

適用対象