HierarchicalDataTemplate Class
Represents a DataTemplate that supports HeaderedItemsControl, such as TreeViewItem or MenuItem.
Assembly: PresentationFramework (in PresentationFramework.dll)
System.Windows.Threading::DispatcherObject
System.Windows::FrameworkTemplate
System.Windows::DataTemplate
System.Windows::HierarchicalDataTemplate
| Name | Description | |
|---|---|---|
![]() | HierarchicalDataTemplate() | Initializes a new instance of the HierarchicalDataTemplate class. |
![]() | HierarchicalDataTemplate(Object^) | Initializes a new instance of the HierarchicalDataTemplate class with the specified type for which the template is intended. |
| Name | Description | |
|---|---|---|
![]() | AlternationCount | Gets or sets the number of alternating item containers for the child items. |
![]() | DataTemplateKey | Gets the default key of the DataTemplate. (Inherited from DataTemplate.) |
![]() | DataType | Gets or sets the type for which this DataTemplate is intended. (Inherited from DataTemplate.) |
![]() | Dispatcher | Gets the Dispatcher this DispatcherObject is associated with. (Inherited from DispatcherObject.) |
![]() | HasContent | Gets a value that indicates whether this template has optimized content.(Inherited from FrameworkTemplate.) |
![]() | IsSealed | Gets a value that indicates whether this object is in an immutable state so it cannot be changed.(Inherited from FrameworkTemplate.) |
![]() | ItemBindingGroup | Gets or sets the BindingGroup that is copied to each child item. |
![]() | ItemContainerStyle | Gets or sets the Style that is applied to the item container for each child item. |
![]() | ItemContainerStyleSelector | Gets or sets custom style-selection logic for a style that can be applied to each item container. |
![]() | ItemsSource | Gets or sets the binding for this data template, which indicates where to find the collection that represents the next level in the data hierarchy. |
![]() | ItemStringFormat | Gets or sets a composite string that specifies how to format the items in the next level in the data hierarchy if they are displayed as strings. |
![]() | ItemTemplate | Gets or sets the DataTemplate to apply to the ItemTemplate property on a generated HeaderedItemsControl (such as a MenuItem or a TreeViewItem), to indicate how to display items from the next level in the data hierarchy. |
![]() | ItemTemplateSelector | Gets or sets the DataTemplateSelector to apply to the ItemTemplateSelector property on a generated HeaderedItemsControl (such as a MenuItem or a TreeViewItem), to indicate how to select a template to display items from the next level in the data hierarchy. |
![]() | Resources | Gets or sets the collection of resources that can be used within the scope of this template.(Inherited from FrameworkTemplate.) |
![]() | Template | Gets or sets a reference to the object that records or plays the XAML nodes for the template when the template is defined or applied by a writer.(Inherited from FrameworkTemplate.) |
![]() | Triggers | Gets a collection of triggers that apply property values or perform actions based on one or more conditions.(Inherited from DataTemplate.) |
![]() | VisualTree | Gets or sets the root node of the template.(Inherited from FrameworkTemplate.) |
| Name | Description | |
|---|---|---|
![]() | CheckAccess() | Determines whether the calling thread has access to this DispatcherObject.(Inherited from DispatcherObject.) |
![]() | Equals(Object^) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | Finalize() | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.) |
![]() | FindName(String^, FrameworkElement^) | Finds the element associated with the specified name defined within this template.(Inherited from FrameworkTemplate.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetType() | |
![]() | LoadContent() | Loads the content of the template as an instance of an object and returns the root element of the content.(Inherited from FrameworkTemplate.) |
![]() | MemberwiseClone() | |
![]() | RegisterName(String^, Object^) | Registers a new name/object pair into the current name scope.(Inherited from FrameworkTemplate.) |
![]() | Seal() | Locks the template so it cannot be changed.(Inherited from FrameworkTemplate.) |
![]() | ShouldSerializeResources(XamlDesignerSerializationManager^) | Returns a value that indicates whether serialization processes should serialize the value of the Resources property on instances of this class.(Inherited from FrameworkTemplate.) |
![]() | ShouldSerializeVisualTree() | Returns a value that indicates whether serialization processes should serialize the value of the VisualTree property on instances of this class.(Inherited from FrameworkTemplate.) |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
![]() | UnregisterName(String^) | Removes a name/object mapping from the XAML namescope.(Inherited from FrameworkTemplate.) |
![]() | ValidateTemplatedParent(FrameworkElement^) | Checks the templated parent against a set of rules.(Inherited from DataTemplate.) |
![]() | VerifyAccess() | Enforces that the calling thread has access to this DispatcherObject.(Inherited from DispatcherObject.) |
| Name | Description | |
|---|---|---|
![]() ![]() | INameScope::FindName(String^) | This API supports the product infrastructure and is not intended to be used directly from your code. Returns an object that has the provided identifying name. (Inherited from FrameworkTemplate.) |
![]() ![]() | IQueryAmbient::IsAmbientPropertyAvailable(String^) | Queries whether a specified ambient property is available in the current scope.(Inherited from FrameworkTemplate.) |
In the following example, ListLeagueList is a list of League objects. Each League object has a Name and a collection of Division objects. Each Division has a Name and a collection of Team objects, and each Team object has a Name.
The example shows that with the use of HierarchicalDataTemplate, you can easily display list data that contains other lists. The following is a screenshot of the example.

Available since 3.0
Silverlight
Available since 3.0
Windows Phone Silverlight
Available since 7.0
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.




