Show / Hide Table of Contents

Class TreeView

Represents a control that displays hierarchical data in a tree structure that has items that can expand and collapse.

Inheritance
System.Object
DependencyObject
UIElement
FrameworkElement
Control
ItemsControl
TreeView
Inherited Members
ItemsControl.Items
ItemsControl.ItemContainerGenerator
ItemsControl.ItemsPanel
ItemsControl.ItemsPanelProperty
ItemsControl.ItemsSource
ItemsControl.ItemsSourceProperty
ItemsControl.ItemTemplate
ItemsControl.ItemTemplateProperty
ItemsControl.DisplayMemberPath
ItemsControl.DisplayMemberPathProperty
ItemsControl.UpdateItemsPanel(ItemsPanelTemplate)
ItemsControl.OnItemsSourceChanged(IEnumerable, IEnumerable)
ItemsControl.LogicalChildren
ItemsControl.GetItemsOwner(DependencyObject)
ItemsControl.ItemsControlFromItemContainer(DependencyObject)
ItemsControl.OnTextInput(TextCompositionEventArgs)
Control.EnableBaseControlHandlingOfVisualStates
Control.ManageIsEnabled(Boolean)
Control.Background
Control.BackgroundProperty
Control.BorderBrush
Control.BorderBrushProperty
Control.BorderThickness
Control.BorderThicknessProperty
Control.FontWeight
Control.FontWeightProperty
Control.FontStyle
Control.FontStyleProperty
Control.Foreground
Control.ForegroundProperty
Control.FontFamily
Control.FontFamilyProperty
Control.FontSize
Control.FontSizeProperty
Control.TextDecorations
Control.TextDecorationsProperty
Control.Padding
Control.PaddingProperty
Control.HorizontalContentAlignment
Control.HorizontalContentAlignmentProperty
Control.VerticalContentAlignment
Control.VerticalContentAlignmentProperty
Control.TabIndex
Control.TabIndexProperty
Control.IsTabStop
Control.IsTabStopProperty
Control.TabNavigation
Control.TabNavigationProperty
Control.Template
Control.TemplateProperty
Control.ApplyTemplate()
Control.GetTemplateChild(String)
Control.Focus()
Control.HandlesScrolling
Control.CreateDomElement(Object, Object)
Control.CharacterSpacingProperty
Control.CharacterSpacing
Control.FontStretchProperty
Control.FontStretch
Control.OnDrop(DragEventArgs)
Control.OnDragEnter(DragEventArgs)
Control.OnDragLeave(DragEventArgs)
Control.OnTextInputUpdate(TextCompositionEventArgs)
Control.MeasureOverride(Size)
Control.ArrangeOverride(Size)
FrameworkElement.LayoutUpdated
FrameworkElement.SizeChanged
FrameworkElement.ResourceLookupMode
FrameworkElement.StyleProperty
FrameworkElement.Style
FrameworkElement.DefaultStyleKeyProperty
FrameworkElement.DefaultStyleKey
FrameworkElement.OverridesDefaultStyleProperty
FrameworkElement.OverridesDefaultStyle
FrameworkElement.OnVisualParentChanged(DependencyObject)
FrameworkElement.VisualChildrenCount
FrameworkElement.GetVisualChild(Int32)
FrameworkElement.Parent
FrameworkElement.AddLogicalChild(Object)
FrameworkElement.RemoveLogicalChild(Object)
FrameworkElement.TemplatedParent
FrameworkElement.Resources
FrameworkElement.IsLoaded
FrameworkElement.SetBinding(DependencyProperty, BindingBase)
FrameworkElement.SetBinding(DependencyProperty, Binding)
FrameworkElement.GetBindingExpression(DependencyProperty)
FrameworkElement.Cursor
FrameworkElement.CursorProperty
FrameworkElement.FindName(String)
FrameworkElement.Name
FrameworkElement.NameProperty
FrameworkElement.DataContext
FrameworkElement.DataContextProperty
FrameworkElement.DataContextChanged
FrameworkElement.Triggers
FrameworkElement.FlowDirectionProperty
FrameworkElement.FlowDirection
FrameworkElement.LanguageProperty
FrameworkElement.Language
FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs)
FrameworkElement.Tag
FrameworkElement.TagProperty
FrameworkElement.LoadedEvent
FrameworkElement.Loaded
FrameworkElement.Unloaded
FrameworkElement.BindingValidationError
FrameworkElement.ContextMenuProperty
FrameworkElement.ContextMenu
FrameworkElement.ContextMenuOpening
FrameworkElement.ToolTipProperty
FrameworkElement.ToolTip
FrameworkElement.INTERNAL_OnDetachedFromVisualTree()
FrameworkElement.INTERNAL_OnAttachedToVisualTree()
FrameworkElement.Height
FrameworkElement.HeightProperty
FrameworkElement.Width
FrameworkElement.WidthProperty
FrameworkElement.HorizontalAlignment
FrameworkElement.HorizontalAlignmentProperty
FrameworkElement.VerticalAlignment
FrameworkElement.VerticalAlignmentProperty
FrameworkElement.Margin
FrameworkElement.MarginProperty
FrameworkElement.MinHeight
FrameworkElement.MinHeightProperty
FrameworkElement.MinWidth
FrameworkElement.MinWidthProperty
FrameworkElement.MaxHeight
FrameworkElement.MaxHeightProperty
FrameworkElement.MaxWidth
FrameworkElement.MaxWidthProperty
FrameworkElement.ActualWidthProperty
FrameworkElement.ActualWidth
FrameworkElement.ActualHeightProperty
FrameworkElement.ActualHeight
UIElement.TransformToVisual(UIElement)
UIElement.RenderSize
UIElement.DesiredSize
UIElement.InvalidateMeasure()
UIElement.InvalidateArrange()
UIElement.Measure(Size)
UIElement.Arrange(Rect)
UIElement.UpdateLayout()
UIElement.DragEnter
UIElement.DragLeave
UIElement.Drop
UIElement.DragOver
UIElement.CacheMode
UIElement.CacheModeProperty
UIElement.Projection
UIElement.ProjectionProperty
UIElement.VisualParent
UIElement.AddVisualChild(UIElement)
UIElement.RemoveVisualChild(UIElement)
UIElement.OnVisualChildrenChanged(DependencyObject, DependencyObject)
UIElement.XamlSourcePath
UIElement.ClipToBounds
UIElement.ClipToBoundsProperty
UIElement.ClipProperty
UIElement.Clip
UIElement.IsEnabledProperty
UIElement.IsEnabled
UIElement.IsEnabledChanged
UIElement.EffectProperty
UIElement.Effect
UIElement.RenderTransformProperty
UIElement.RenderTransform
UIElement.RenderTransformOriginProperty
UIElement.RenderTransformOrigin
UIElement.UseLayoutRounding
UIElement.UseLayoutRoundingProperty
UIElement.Visibility
UIElement.VisibilityProperty
UIElement.IsVisibleProperty
UIElement.IsVisible
UIElement.IsVisibleChanged
UIElement.OpacityProperty
UIElement.Opacity
UIElement.OpacityMaskProperty
UIElement.OpacityMask
UIElement.IsHitTestVisible
UIElement.IsHitTestVisibleProperty
UIElement.AllowDrop
UIElement.AllowDropProperty
UIElement.CaptureMouse()
UIElement.IsMouseCaptured
UIElement.ReleaseMouseCapture()
UIElement.AllowScrollOnTouchMove
UIElement.AllowScrollOnTouchMoveProperty
UIElement.AddHandler(RoutedEvent, Delegate, Boolean)
UIElement.RemoveHandler(RoutedEvent, Delegate)
UIElement.MouseMoveEvent
UIElement.MouseMove
UIElement.MouseLeftButtonDownEvent
UIElement.MouseLeftButtonDown
UIElement.MouseRightButtonDownEvent
UIElement.MouseRightButtonDown
UIElement.OnMouseRightButtonDown(MouseButtonEventArgs)
UIElement.MouseWheelEvent
UIElement.MouseWheel
UIElement.OnMouseWheel(MouseWheelEventArgs)
UIElement.MouseLeftButtonUpEvent
UIElement.MouseLeftButtonUp
UIElement.MouseEnterEvent
UIElement.MouseEnter
UIElement.MouseLeaveEvent
UIElement.MouseLeave
UIElement.TextInputStartEvent
UIElement.TextInputStart
UIElement.OnTextInputStart(TextCompositionEventArgs)
UIElement.TextInputEvent
UIElement.TextInput
UIElement.TextInputUpdateEvent
UIElement.TextInputUpdate
UIElement.TappedEvent
UIElement.Tapped
UIElement.OnTapped(TappedRoutedEventArgs)
UIElement.MouseRightButtonUpEvent
UIElement.MouseRightButtonUp
UIElement.OnMouseRightButtonUp(MouseButtonEventArgs)
UIElement.KeyDownEvent
UIElement.KeyDown
UIElement.KeyUpEvent
UIElement.KeyUp
UIElement.GotFocusEvent
UIElement.GotFocus
UIElement.LostFocusEvent
UIElement.LostFocus
UIElement.LostMouseCapture
UIElement.OnLostMouseCapture(MouseEventArgs)
UIElement.INTERNAL_AttachToDomEvents()
UIElement.INTERNAL_DetachFromDomEvents()
DependencyObject.GetValue(DependencyProperty)
DependencyObject.SetCurrentValue(DependencyProperty, Object)
DependencyObject.ReadLocalValue(DependencyProperty)
DependencyObject.SetValue(DependencyProperty, Object)
DependencyObject.SetValue(DependencyPropertyKey, Object)
DependencyObject.CoerceValue(DependencyProperty)
DependencyObject.Dispatcher
DependencyObject.ClearValue(DependencyProperty)
DependencyObject.ClearValue(DependencyPropertyKey)
DependencyObject.CheckAccess()
DependencyObject.GetAnimationBaseValue(DependencyProperty)
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: System.Windows.Controls
Assembly: OpenSilver.dll
Syntax
[StyleTypedProperty(Property = "ItemContainerStyle", StyleTargetType = typeof(TreeViewItem))]
public class TreeView : ItemsControl, IControl, IFrameworkElement, IUIElement, IDependencyObject

Constructors

| Improve this Doc View Source

TreeView()

Initializes a new instance of the TreeView class.

Declaration
public TreeView()

Fields

| Improve this Doc View Source

ItemContainerStyleProperty

Identifies the ItemContainerStyle dependency property.

Declaration
public static readonly DependencyProperty ItemContainerStyleProperty
Field Value
Type Description
DependencyProperty

The identifier for the ItemContainerStyle dependency property.

| Improve this Doc View Source

SelectedItemProperty

Identifies the SelectedItem dependency property.

Declaration
public static readonly DependencyProperty SelectedItemProperty
Field Value
Type Description
DependencyProperty

The identifier for the SelectedItem property.

| Improve this Doc View Source

SelectedValuePathProperty

Identifies the SelectedValuePath dependency property.

Declaration
public static readonly DependencyProperty SelectedValuePathProperty
Field Value
Type Description
DependencyProperty

The identifier for the SelectedValuePath dependency property.

| Improve this Doc View Source

SelectedValueProperty

Identifies the SelectedValue dependency property.

Declaration
public static readonly DependencyProperty SelectedValueProperty
Field Value
Type Description
DependencyProperty

The identifier for the SelectedValue dependency property.

Properties

| Improve this Doc View Source

ItemContainerStyle

Gets or sets the Style that is applied to the container element generated for each item.

Declaration
public Style ItemContainerStyle { get; set; }
Property Value
Type Description
Style

The Style applied to the container element that contains each item.

| Improve this Doc View Source

SelectedItem

Gets the selected item in a TreeView.

Declaration
public object SelectedItem { get; }
Property Value
Type Description
System.Object

The currently selected item or null if no item is selected. The default value is null.

| Improve this Doc View Source

SelectedValue

Gets the value of the SelectedItem property that is specified by the SelectedValuePath property.

Declaration
public object SelectedValue { get; }
Property Value
Type Description
System.Object

The value of the SelectedItem property that is specified by the SelectedValuePath property, or null if no item is selected. The default value is null.

| Improve this Doc View Source

SelectedValuePath

Gets or sets the property path that is used to get the SelectedValue property of the SelectedItem property in a TreeView.

Declaration
public string SelectedValuePath { get; set; }
Property Value
Type Description
System.String

The property path that is used to get the SelectedValue property of the SelectedItem property in a TreeView. The default value is System.String.Empty.

Methods

| Improve this Doc View Source

ClearContainerForItemOverride(DependencyObject, Object)

Removes all templates, styles, and bindings for the object displayed as a TreeViewItem.

Declaration
protected override void ClearContainerForItemOverride(DependencyObject element, object item)
Parameters
Type Name Description
DependencyObject element

The TreeViewItem element to clear.

System.Object item

The item that is contained in the TreeViewItem.

Overrides
ItemsControl.ClearContainerForItemOverride(DependencyObject, Object)
| Improve this Doc View Source

GetContainerForItemOverride()

Creates a TreeViewItem to display content.

Declaration
protected override DependencyObject GetContainerForItemOverride()
Returns
Type Description
DependencyObject

A TreeViewItem to use as a container for content.

Overrides
ItemsControl.GetContainerForItemOverride()
| Improve this Doc View Source

IsItemItsOwnContainerOverride(Object)

Determines whether the specified item is a TreeViewItem, which is the default container for items in the TreeView control.

Declaration
protected override bool IsItemItsOwnContainerOverride(object item)
Parameters
Type Name Description
System.Object item

The object to evaluate.

Returns
Type Description
System.Boolean

True if the item is a TreeViewItem; otherwise, false.

Overrides
ItemsControl.IsItemItsOwnContainerOverride(Object)
| Improve this Doc View Source

OnApplyTemplate()

Builds the visual tree for the TreeView control when a new control template is applied.

Declaration
public override void OnApplyTemplate()
Overrides
Control.OnApplyTemplate()
| Improve this Doc View Source

OnCreateAutomationPeer()

Returns a TreeViewAutomationPeer for use by the Silverlight automation infrastructure.

Declaration
protected override AutomationPeer OnCreateAutomationPeer()
Returns
Type Description
AutomationPeer

A TreeViewAutomationPeer for the TreeView control.

Overrides
UIElement.OnCreateAutomationPeer()
| Improve this Doc View Source

OnGotFocus(RoutedEventArgs)

Provides handling for the GotFocus event.

Declaration
protected override void OnGotFocus(RoutedEventArgs e)
Parameters
Type Name Description
RoutedEventArgs e

Event arguments.

Overrides
Control.OnGotFocus(RoutedEventArgs)
| Improve this Doc View Source

OnItemsChanged(NotifyCollectionChangedEventArgs)

Makes adjustments to the TreeView control when the value of the Items property changes.

Declaration
protected override void OnItemsChanged(NotifyCollectionChangedEventArgs e)
Parameters
Type Name Description
System.Collections.Specialized.NotifyCollectionChangedEventArgs e

A System.Collections.Specialized.NotifyCollectionChangedEventArgs that contains data about the change.

Overrides
ItemsControl.OnItemsChanged(NotifyCollectionChangedEventArgs)
| Improve this Doc View Source

OnKeyDown(KeyEventArgs)

Provides handling for the KeyDown event when a key is pressed while the control has focus.

Declaration
protected override void OnKeyDown(KeyEventArgs e)
Parameters
Type Name Description
KeyEventArgs e

A KeyEventArgs that contains the event data.

Overrides
UIElement.OnKeyDown(KeyEventArgs)
Exceptions
Type Condition
System.ArgumentNullException

e is null.

| Improve this Doc View Source

OnKeyUp(KeyEventArgs)

Provides handling for the KeyUp event.

Declaration
protected override void OnKeyUp(KeyEventArgs e)
Parameters
Type Name Description
KeyEventArgs e

Event arguments.

Overrides
UIElement.OnKeyUp(KeyEventArgs)
| Improve this Doc View Source

OnLostFocus(RoutedEventArgs)

Provides handling for the LostFocus event.

Declaration
protected override void OnLostFocus(RoutedEventArgs e)
Parameters
Type Name Description
RoutedEventArgs e

Event arguments.

Overrides
Control.OnLostFocus(RoutedEventArgs)
| Improve this Doc View Source

OnMouseEnter(MouseEventArgs)

Provides handling for the MouseEnter event.

Declaration
protected override void OnMouseEnter(MouseEventArgs e)
Parameters
Type Name Description
MouseEventArgs e

Event arguments.

Overrides
UIElement.OnMouseEnter(MouseEventArgs)
| Improve this Doc View Source

OnMouseLeave(MouseEventArgs)

Provides handling for the MouseLeave event.

Declaration
protected override void OnMouseLeave(MouseEventArgs e)
Parameters
Type Name Description
MouseEventArgs e

Event arguments.

Overrides
UIElement.OnMouseLeave(MouseEventArgs)
| Improve this Doc View Source

OnMouseLeftButtonDown(MouseButtonEventArgs)

Provides handling for the MouseLeftButtonDown event.

Declaration
protected override void OnMouseLeftButtonDown(MouseButtonEventArgs e)
Parameters
Type Name Description
MouseButtonEventArgs e

A MouseButtonEventArgs that contains the event data.

Overrides
UIElement.OnMouseLeftButtonDown(MouseButtonEventArgs)
| Improve this Doc View Source

OnMouseLeftButtonUp(MouseButtonEventArgs)

Provides handling for the MouseLeftButtonUp event.

Declaration
protected override void OnMouseLeftButtonUp(MouseButtonEventArgs e)
Parameters
Type Name Description
MouseButtonEventArgs e

Event arguments.

Overrides
UIElement.OnMouseLeftButtonUp(MouseButtonEventArgs)
| Improve this Doc View Source

OnMouseMove(MouseEventArgs)

Provides handling for the MouseMove event.

Declaration
protected override void OnMouseMove(MouseEventArgs e)
Parameters
Type Name Description
MouseEventArgs e

Event arguments.

Overrides
UIElement.OnMouseMove(MouseEventArgs)
| Improve this Doc View Source

OnSelectedItemChanged(RoutedPropertyChangedEventArgs<Object>)

Raises the SelectedItemChanged event when the SelectedItem property value changes.

Declaration
protected virtual void OnSelectedItemChanged(RoutedPropertyChangedEventArgs<object> e)
Parameters
Type Name Description
RoutedPropertyChangedEventArgs<System.Object> e

A RoutedPropertyChangedEventArgs<T> that contains the event data.

| Improve this Doc View Source

PrepareContainerForItemOverride(DependencyObject, Object)

Prepares the container element to display the specified item.

Declaration
protected override void PrepareContainerForItemOverride(DependencyObject element, object item)
Parameters
Type Name Description
DependencyObject element

The container element used to display the specified item.

System.Object item

The item to display.

Overrides
ItemsControl.PrepareContainerForItemOverride(DependencyObject, Object)

Events

| Improve this Doc View Source

SelectedItemChanged

Occurs when the value of the SelectedItem property changes.

Declaration
public event RoutedPropertyChangedEventHandler<object> SelectedItemChanged
Event Type
Type Description
RoutedPropertyChangedEventHandler<System.Object>

Extension Methods

DependencyObjectHelper.GetSelfAndAncestors(DependencyObject)
UIElementExtendedRoutedEventExtensions.AddHandler(UIElement, ExtendedRoutedEvent, Delegate, Boolean)
UIElementExtendedRoutedEventExtensions.RemoveHandler(UIElement, ExtendedRoutedEvent, Delegate)
ItemsControlExtensions.GetItemsHost(ItemsControl)
ItemsControlExtensions.GetScrollHost(ItemsControl)
ItemsControlExtensions.GetContainers(ItemsControl)
ItemsControlExtensions.GetContainers<TContainer>(ItemsControl)
ItemsControlExtensions.GetItemsAndContainers(ItemsControl)
ItemsControlExtensions.GetItemsAndContainers<TContainer>(ItemsControl)
TreeViewExtensions.GetContainers(TreeView)
TreeViewExtensions.GetItemsAndContainers(TreeView)
TreeViewExtensions.GetDescendantContainers(TreeView)
TreeViewExtensions.GetDescendantItemsAndContainers(TreeView)
TreeViewExtensions.GetContainersFromItem(TreeView, Object)
TreeViewExtensions.GetContainerFromItem(TreeView, Object)
TreeViewExtensions.GetParentItem(TreeView, Object)
TreeViewExtensions.GetSelectedContainer(TreeView)
TreeViewExtensions.SetSelectedContainer(TreeView, TreeViewItem)
TreeViewExtensions.ClearSelection(TreeView)
TreeViewExtensions.SelectItem(TreeView, Object)
TreeViewExtensions.GetSelectedPath(TreeView)
TreeViewExtensions.ExpandAll(TreeView)
TreeViewExtensions.CollapseAll(TreeView)
TreeViewExtensions.ExpandToDepth(TreeView, Int32)
TreeViewExtensions.ExpandSelectedPath(TreeView)
TreeViewExtensions.CollapseAllButSelectedPath(TreeView)
TreeViewExtensions.ExpandPath(TreeView, Object[])
TreeViewExtensions.ExpandPath<T>(TreeView, IEnumerable<T>)
TreeViewExtensions.ExpandPath<T>(TreeView, Func<Object, T>, T[])
TreeViewExtensions.ExpandPath<T>(TreeView, Func<Object, T>, IEnumerable<T>)
TreeViewExtensions.GetCheckedItemsAndContainers(TreeView)
TreeViewExtensions.GetCheckedItemsAndContainers(TreeView, Boolean)
VisualTreeExtensions.GetVisualAncestors(DependencyObject)
VisualTreeExtensions.GetVisualAncestorsAndSelf(DependencyObject)
VisualTreeExtensions.GetVisualChildren(DependencyObject)
VisualTreeExtensions.GetVisualChildrenAndSelf(DependencyObject)
VisualTreeExtensions.GetVisualDescendants(DependencyObject)
VisualTreeExtensions.GetVisualDescendantsAndSelf(DependencyObject)
VisualTreeExtensions.GetVisualSiblings(DependencyObject)
VisualTreeExtensions.GetVisualSiblingsAndSelf(DependencyObject)
VisualTreeExtensions.GetBoundsRelativeTo(FrameworkElement, UIElement)
VisualTreeExtensions.InvokeOnLayoutUpdated(FrameworkElement, Action)
  • Improve this Doc
  • View Source