HierarchicalDataTemplate 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
代表支援 HeaderedItemsControl 的 DataTemplate,例如 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
- 繼承
範例
在下列範例中,ListLeagueList
是 League
物件的清單。 每個 League
物件都有一個 Name
和一組 Division
物件集合。 每一個 Division
都有一個 Name
和 Team
物件的集合,並且每一個 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 時,您可以輕鬆地顯示包含其他清單的清單資料。 以下是範例的螢幕擷取畫面。
建構函式
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 (例如 ItemTemplate 或 HeaderedItemsControl) 上 MenuItem 屬性的 TreeViewItem,以指出如何顯示資料階層架構中下一個層級的項目。 |
ItemTemplateSelector |
取得或設定要套用至所產生之 DataTemplateSelector (例如 ItemTemplateSelector 或 HeaderedItemsControl) 上 MenuItem 屬性的 TreeViewItem,以指出如何選取樣板來顯示資料階層架構中下一個層級的項目。 |
Resources |
取得或設定可在這個樣板的範圍內使用的資源集合。 (繼承來源 FrameworkTemplate) |
Template |
當樣板為已定義或由寫入器套用時,取得或設定記錄或播放該樣板之 XAML 節點的物件之參考。 (繼承來源 FrameworkTemplate) |
Triggers |
取得觸發程序的集合,這些觸發程序會根據一個或多個條件來套用屬性值或執行動作。 (繼承來源 DataTemplate) |
VisualTree |
取得或設定樣板的根節點。 (繼承來源 FrameworkTemplate) |
方法
明確介面實作
INameScope.FindName(String) |
傳回具有所提供之識別名稱的物件。 (繼承來源 FrameworkTemplate) |
IQueryAmbient.IsAmbientPropertyAvailable(String) |
查詢指定的環境屬性 (Ambient Property) 是否可用於目前的範圍。 (繼承來源 FrameworkTemplate) |