Files
docs-desktop/dotnet-desktop-guide/framework/wpf/controls/treeview-styles-and-templates.md
T
Andy (Steve) De George e9fcf43083 Merge pull request #1135 from dotnet/adegeo-links
Correct .NET Framework links that pointed to old .NET 5 URLs
2021-08-11 12:04:34 -07:00

5.6 KiB

title, ms.date, helpviewer_keywords, ms.assetid
title ms.date helpviewer_keywords ms.assetid
TreeView Styles and Templates 03/30/2017
ControlTemplate [WPF], TreeView
templates [WPF], TreeView
parts [WPF], TreeView
states [WPF], TreeView
styles [WPF], TreeView
TreeView [WPF], styles and templates
a49adb77-0202-4caa-b94a-8bb110d7fa9a

TreeView Styles and Templates

This topic describes the styles and templates for the xref:System.Windows.Controls.TreeView control. You can modify the default xref:System.Windows.Controls.ControlTemplate to give the control a unique appearance. For more information, see Create a template for a control.

TreeView Parts

The xref:System.Windows.Controls.TreeView control does not have any named parts.

When you create a xref:System.Windows.Controls.ControlTemplate for an xref:System.Windows.Controls.TreeView, your template might contain a xref:System.Windows.Controls.ItemsPresenter within a xref:System.Windows.Controls.ScrollViewer. (The xref:System.Windows.Controls.ItemsPresenter displays each item in the xref:System.Windows.Controls.TreeView; the xref:System.Windows.Controls.ScrollViewer enables scrolling within the control). If the xref:System.Windows.Controls.ItemsPresenter is not the direct child of the xref:System.Windows.Controls.ScrollViewer, you must give the xref:System.Windows.Controls.ItemsPresenter the name, ItemsPresenter.

TreeView States

The following table lists the visual states for the xref:System.Windows.Controls.TreeView control.

VisualState Name VisualStateGroup Name Description
Valid ValidationStates The control uses the xref:System.Windows.Controls.Validation class and the xref:System.Windows.Controls.Validation.HasError%2A?displayProperty=nameWithType attached property is false.
InvalidFocused ValidationStates The xref:System.Windows.Controls.Validation.HasError%2A?displayProperty=nameWithType attached property is true has the control has focus.
InvalidUnfocused ValidationStates The xref:System.Windows.Controls.Validation.HasError%2A?displayProperty=nameWithType attached property is true has the control does not have focus.

TreeViewItem Parts

The following table lists the named parts for the xref:System.Windows.Controls.TreeViewItem control.

Part Type Description
PART_Header xref:System.Windows.FrameworkElement A visual element that contains that header content of the xref:System.Windows.Controls.TreeView control.

TreeViewItem States

The following table lists the visual states for xref:System.Windows.Controls.TreeViewItem control.

VisualState Name VisualStateGroup Name Description
Normal CommonStates The default state.
MouseOver CommonStates The mouse pointer is positioned over the xref:System.Windows.Controls.TreeViewItem.
Disabled CommonStates The xref:System.Windows.Controls.TreeViewItem is disabled.
Focused FocusStates The xref:System.Windows.Controls.TreeViewItem has focus.
Unfocused FocusStates The xref:System.Windows.Controls.TreeViewItem does not have focus.
Expanded ExpansionStates The xref:System.Windows.Controls.TreeViewItem control is expanded.
Collapsed ExpansionStates The xref:System.Windows.Controls.TreeViewItem control is collapsed.
HasItems HasItemsStates The xref:System.Windows.Controls.TreeViewItem has items.
NoItems HasItemsStates The xref:System.Windows.Controls.TreeViewItem does not have items.
Selected SelectionStates The xref:System.Windows.Controls.TreeViewItem is selected.
SelectedInactive SelectionStates The xref:System.Windows.Controls.TreeViewItem is selected but not active.
Unselected SelectionStates The xref:System.Windows.Controls.TreeViewItem is not selected.
Valid ValidationStates The control uses the xref:System.Windows.Controls.Validation class and the xref:System.Windows.Controls.Validation.HasError%2A?displayProperty=nameWithType attached property is false.
InvalidFocused ValidationStates The xref:System.Windows.Controls.Validation.HasError%2A?displayProperty=nameWithType attached property is true has the control has focus.
InvalidUnfocused ValidationStates The xref:System.Windows.Controls.Validation.HasError%2A?displayProperty=nameWithType attached property is true has the control does not have focus.

TreeView ControlTemplate Example

The following example shows how to define a xref:System.Windows.Controls.ControlTemplate for the xref:System.Windows.Controls.TreeView control and its associated types.

[!code-xamlControlTemplateExamples#TreeView]

The preceding example uses one or more of the following resources.

[!code-xamlControlTemplateExamples#Resources]

For the complete sample, see Styling with ControlTemplates Sample.

See also