TreeListBox Class
Represents an advanced single-column tree view control.
[TemplatePart(Name = "PART_ScrollViewer", Type = typeof(ScrollViewer))]
public class TreeListBox : ItemsControl
- Inheritance:
- object Visual UIElement FrameworkElement Control ItemsControl object
- Derived:
- TreeListView ShellTreeListBox
Constructors
TreeListBox()
Initializes an instance of the class.
public TreeListBox()
Properties
AssemblyInfo
The UIAssemblyInfoBase to use.
[Browsable(false)]
protected virtual UIAssemblyInfoBase? AssemblyInfo { get; }
Property Value
AutoExpandItemsOnFilter
Indicates whether to auto-expand to items that are included by a filter when IsFilterActive is true.
public bool AutoExpandItemsOnFilter { get; set; }
Property Value
- bool:
trueif items that are included by a filter will be made visible; otherwise,false. The default value isfalse.
CanDragItems
Indicates whether to allow dragging of selected items.
public bool CanDragItems { get; set; }
Property Value
- bool:
trueif dragging of selected items is allowed; otherwise,false.
CanExpandAll
Indicates whether any expand all operations can occur.
protected virtual bool CanExpandAll { get; }
Property Value
- bool:
trueif any expand all operations can occur; otherwise,false. The default value istrue.
CanSelectItemOnFocus
Indicates whether an item is selected when it receives focus.
public bool CanSelectItemOnFocus { get; set; }
Property Value
- bool:
trueif an item is selected when it receives focus; otherwise,false. The default value isfalse.
DataFilter
The IDataFilter to use when IsFilterActive is true.
EmptyContent
The content to display when there are no items visible in the control.
EmptyContentTemplate
The DataTemplate to display when there are no items visible in the control.
HasTreeLines
Indicates whether tree lines should be rendered in TreeListBox and TreeListView controls.
public bool HasTreeLines { get; set; }
Property Value
- bool:
trueif tree lines should be rendered; otherwise,false. The default value isfalse.
Remarks
Tree lines can't render in PropertyGrid controls.
IndentIncrement
The incremental amount by which to indent an item for each depth level.
IsDataVirtualizationEnabled
Indicates whether data virtualization is enabled.
public bool IsDataVirtualizationEnabled { get; set; }
Property Value
- bool:
trueif data virtualization is enabled; otherwise,false. The default value isfalse.
Remarks
Only set this property to true when using virtualized collections that implement IList.
In most scenarios, this data virtualization feature is not needed since UI virtualization is always active in the control.
When the data virtualization feature is enabled, as a query for child items is made, an ITreeItemVirtualPlaceholder
will be created for each child item. The only property initially touched on the virtualized collection is Count.
Then when an item's UI container is first requested, the ITreeItemVirtualPlaceholder will be used
to call into the virtualized collection's indexer and retrieve the real item.
This allows for virtualized data retrieval of paged sections as needed, instead of the entire collection at once.
IsEmpty
Indicates whether the control is currently empty (doesn't contain any visible items).
public bool IsEmpty { get; }
Property Value
- bool:
trueif the control is currently empty (doesn't contain any visible items); otherwise,false. The default value istrue.
IsFilterActive
Indicates whether a filter is currently active.
public bool IsFilterActive { get; set; }
Property Value
- bool:
trueif a filter is currently active; otherwise,false. The default value isfalse.
IsKeyboardFocusWithinContent
Indicates whether keyboard focus is within the content area, and not in any header area.
protected virtual bool IsKeyboardFocusWithinContent { get; }
Property Value
- bool:
trueif keyboard focus is within the content area; otherwise,false.
IsRootItemVisible
Indicates whether the RootItem is visible, or whether its children are the top-level node items.
public bool IsRootItemVisible { get; set; }
Property Value
- bool:
trueif the RootItem is the sole top-level node item; otherwise,false. The default value isfalse.
Remarks
When true, the RootItem itself will be the sole top-level node item.
When false, the RootItem's children will be the top-level node items.
ItemAdapter
The TreeListBoxItemAdapter that adapts items with the UI by providing child items, expansion states, etc.
MultiDragKind
Indicates the dragging support when multiple items are involved.
public TreeMultiDragKind MultiDragKind { get; set; }
Property Value
- TreeMultiDragKind:
The default value is None, meaning only single item selections can be dragged when CanDragItems is
true.
MultiSelectionKind
A TreeMultiSelectionKind that indicates the selection support when multiple items are involved.
public TreeMultiSelectionKind MultiSelectionKind { get; set; }
Property Value
- TreeMultiSelectionKind:
The default value is Any.
PathSeparator
The delimiter string that the tree item full path uses.
RootItem
The root item to display in the control.
public object? RootItem { get; set; }
Property Value
Remarks
Set this property instead of ItemsSource.
SelectedItem
The primary selected item.
public object? SelectedItem { get; set; }
Property Value
Remarks
This property's setter can be a bottleneck in very large trees where the specified node hasn't yet been exposed to the control by its ancestor nodes all being expanded. In that scenario, a full tree search is required to locate the node.
SelectedItems
The collection of selected items.
public ISelectedTreeItemCollection SelectedItems { get; }
Property Value
SelectionMode
A SelectionMode that indicates the selection behavior.
public SelectionMode SelectionMode { get; set; }
Property Value
- SelectionMode:
The default value is Single.
TopLevelIndent
The amount by which to indent a top-level item.
public double TopLevelIndent { get; set; }
Property Value
- double:
The default value is
20.0.
Remarks
When top-level items aren't expandable, set this property to 0 to reclaim the space that would have been used by the expander.
Methods
ArrangeOverride(Size)
Called to arrange and size the content of a Control object.
protected override Size ArrangeOverride(Size finalSize)
| Parameter | Type | Description |
|---|---|---|
| finalSize | Size |
Returns
- Size:
The size of the control.
BringItemIntoView(object)
Brings the specified node's container into view.
public bool BringItemIntoView(object item)
| Parameter | Type | Description |
|---|---|---|
| item | object | The node whose container needs to scroll into view. |
Returns
- bool:
trueif the node's container was brought into view; otherwise,false.
Remarks
This method can be a bottleneck in very large trees where the specified node hasn't yet been exposed to the control by its ancestor nodes all being expanded. In that scenario, a full tree search is required to locate the node. For that case, it is recommended to use the BringItemIntoViewByFullPath(string) method that searches by full path instead, since that can be much faster.
BringItemIntoViewByFullPath(string)
Brings the container for the item with the specified full path into view.
public bool BringItemIntoViewByFullPath(string fullPath)
| Parameter | Type | Description |
|---|---|---|
| fullPath | string | The full path to the item whose container needs to scroll into view. |
Returns
- bool:
trueif the item's container was brought into view; otherwise,false.
Remarks
This method requires that the ItemAdapter supplies a path for each item.
ClearContainerForItemOverride(DependencyObject, object)
When overridden in a derived class, undoes the effects of the PrepareContainerForItemOverride(DependencyObject, object) method.
protected override void ClearContainerForItemOverride(DependencyObject element, object item)
| Parameter | Type | Description |
|---|---|---|
| element | DependencyObject | The container element. |
| item | object | The item. |
CollapseAll()
Collapses all known tree items.
public void CollapseAll()
CreateSelectionBatch()
Creates an IDisposable object that wraps a batch of selection updates, and allows them to be made without raising selection-related events in between each one.
ExpandAll()
Expands all known tree items.
public void ExpandAll()
FocusItem(object)
Focuses the container for the specified node, scrolling it into view as needed.
public void FocusItem(object item)
| Parameter | Type | Description |
|---|---|---|
| item | object | The node whose container should be focused. |
Remarks
This method can be a bottleneck in very large trees where the specified node hasn't yet been exposed to the control by its ancestor nodes all being expanded. In that scenario, a full tree search is required to locate the node. For that case, it is recommended to use the FocusItemByFullPath(string) method that searches by full path instead, since that can be much faster.
FocusItemByFullPath(string)
Focuses the container for the node with the specified full path, scrolling it into view as needed.
public void FocusItemByFullPath(string fullPath)
| Parameter | Type | Description |
|---|---|---|
| fullPath | string | The full path to the node whose container should be focused. |
Remarks
This method requires that the ItemAdapter supplies a path for each item.
GetContainerForItemOverride()
Creates or identifies the element that is used to display the given item.
protected override DependencyObject GetContainerForItemOverride()
Returns
- DependencyObject:
The element that is used to display the given item.
GetFullPath(object)
Returns the full path of the specified item.
public string? GetFullPath(object item)
| Parameter | Type | Description |
|---|---|---|
| item | object | The item to examine. |
Returns
GetIsSelectionActive(TreeListBox)
Gets the value of the IsSelectionActive attached property for the specified object.
public static bool GetIsSelectionActive(TreeListBox obj)
| Parameter | Type | Description |
|---|---|---|
| obj | TreeListBox | The object from which the property value is read. |
Returns
GetItemByFullPath(string)
Returns the item with the specified full path.
public object? GetItemByFullPath(string fullPath)
| Parameter | Type | Description |
|---|---|---|
| fullPath | string | The full path to the item. |
Returns
GetItemNavigator(object)
Returns the ITreeItemNavigator for the specified item, if the item is a visible item.
public ITreeItemNavigator? GetItemNavigator(object item)
| Parameter | Type | Description |
|---|---|---|
| item | object | The visible item to examine. |
Returns
Remarks
This navigator can be used to navigate the item tree. No navigator will be returned if the item is not a visible item in this control.
InvalidateChildren(object)
Invalidates the children of the specified item, allowing the children to be requeried.
public void InvalidateChildren(object item)
| Parameter | Type | Description |
|---|---|---|
| item | object | The item to examine. |
IsItemItsOwnContainerOverride(object)
Determines if the specified item is (or is eligible to be) its own container.
protected override bool IsItemItsOwnContainerOverride(object item)
| Parameter | Type | Description |
|---|---|---|
| item | object | The item to check. |
Returns
- bool:
trueif the item is (or is eligible to be) its own container; otherwise,false.
OnApplyTemplate()
When overridden in a derived class, is invoked whenever application code or internal processes call ApplyTemplate().
public override void OnApplyTemplate()
OnCreateAutomationPeer()
Returns class-specific AutomationPeer implementations for the Windows Presentation Foundation (WPF) infrastructure.
protected override AutomationPeer OnCreateAutomationPeer()
Returns
- AutomationPeer:
The type-specific AutomationPeer implementation.
OnDragEnter(DragEventArgs)
Invoked when an unhandled System.Windows.DragDrop.DragEnter attached event reaches an element in its route that is derived from this class. Implement this method to add class handling for this event.
protected override void OnDragEnter(DragEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | DragEventArgs | The DragEventArgs that contains the event data. |
OnDragLeave(DragEventArgs)
Invoked when an unhandled System.Windows.DragDrop.DragLeave attached event reaches an element in its route that is derived from this class. Implement this method to add class handling for this event.
protected override void OnDragLeave(DragEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | DragEventArgs | The DragEventArgs that contains the event data. |
OnDragOver(DragEventArgs)
Invoked when an unhandled System.Windows.DragDrop.DragOver attached event reaches an element in its route that is derived from this class. Implement this method to add class handling for this event.
protected override void OnDragOver(DragEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | DragEventArgs | The DragEventArgs that contains the event data. |
OnDrop(DragEventArgs)
Invoked when an unhandled System.Windows.DragDrop.DragEnter attached event reaches an element in its route that is derived from this class. Implement this method to add class handling for this event.
protected override void OnDrop(DragEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | DragEventArgs | The DragEventArgs that contains the event data. |
OnFilterApplied(RoutedEventArgs)
Occurs after the current filtering state has been applied to all of the control's items, generally occurring when DataFilter is changed, or filtering is enabled or disabled.
protected virtual void OnFilterApplied(RoutedEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | RoutedEventArgs | The event data. |
Remarks
This method has no default implementation. Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.
OnGotKeyboardFocus(KeyboardFocusChangedEventArgs)
Invoked when an unhandled System.Windows.Input.Keyboard.GotKeyboardFocus attached event reaches an element in its route that is derived from this class. Implement this method to add class handling for this event.
protected override void OnGotKeyboardFocus(KeyboardFocusChangedEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | KeyboardFocusChangedEventArgs | The KeyboardFocusChangedEventArgs that contains the event data. |
OnIsKeyboardFocusWithinChanged(DependencyPropertyChangedEventArgs)
Invoked just before the IsKeyboardFocusWithinChanged event is raised by this element. Implement this method to add class handling for this event.
protected override void OnIsKeyboardFocusWithinChanged(DependencyPropertyChangedEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | DependencyPropertyChangedEventArgs | A System.Windows.DependencyPropertyChangedEventArgs that contains the event data. |
OnIsRootItemVisibleChanged(RoutedEventArgs)
Occurs after the IsRootItemVisible property is changed.
protected virtual void OnIsRootItemVisibleChanged(RoutedEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | RoutedEventArgs | The event data. |
Remarks
This method has no default implementation. Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.
OnItemCollapsed(TreeListBoxItemExpansionEventArgs)
Occurs after an item is collapsed.
protected virtual void OnItemCollapsed(TreeListBoxItemExpansionEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | TreeListBoxItemExpansionEventArgs | The event data. |
Remarks
This method has no default implementation. Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.
OnItemCollapsing(TreeListBoxItemExpansionEventArgs)
Occurs before an item is collapsed.
protected virtual void OnItemCollapsing(TreeListBoxItemExpansionEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | TreeListBoxItemExpansionEventArgs | The event data. |
Remarks
This method has no default implementation. Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.
OnItemDefaultActionExecuting(TreeListBoxItemEventArgs)
Occurs before the default action is executed for an item.
protected virtual void OnItemDefaultActionExecuting(TreeListBoxItemEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | TreeListBoxItemEventArgs | The event data. |
Remarks
This method has no default implementation. Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.
OnItemExpanded(TreeListBoxItemExpansionEventArgs)
Occurs after an item is expanded.
protected virtual void OnItemExpanded(TreeListBoxItemExpansionEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | TreeListBoxItemExpansionEventArgs | The event data. |
Remarks
This method has no default implementation. Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.
OnItemExpanding(TreeListBoxItemExpansionEventArgs)
Occurs before an item is expanded.
protected virtual void OnItemExpanding(TreeListBoxItemExpansionEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | TreeListBoxItemExpansionEventArgs | The event data. |
Remarks
This method has no default implementation. Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.
OnItemMenuRequested(TreeListBoxItemMenuEventArgs)
Occurs when an item requests a context menu.
protected virtual void OnItemMenuRequested(TreeListBoxItemMenuEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | TreeListBoxItemMenuEventArgs | The event data. |
Remarks
This method has no default implementation. Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.
OnItemSelecting(TreeListBoxItemEventArgs)
Occurs before an item is selected.
protected virtual void OnItemSelecting(TreeListBoxItemEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | TreeListBoxItemEventArgs | The event data. |
Remarks
This method has no default implementation. Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.
OnItemsSourceChanged(IEnumerable, IEnumerable)
Called when the ItemsSource property changes.
protected override void OnItemsSourceChanged(IEnumerable oldValue, IEnumerable newValue)
| Parameter | Type | Description |
|---|---|---|
| oldValue | IEnumerable | Old value of the ItemsSource property. |
| newValue | IEnumerable | New value of the ItemsSource property. |
OnKeyDown(KeyEventArgs)
Invoked when the KeyDown event is received.
protected override void OnKeyDown(KeyEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | KeyEventArgs | Information about the event. |
OnRootItemChanged(RoutedEventArgs)
Occurs after the RootItem property is changed.
protected virtual void OnRootItemChanged(RoutedEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | RoutedEventArgs | The event data. |
Remarks
This method has no default implementation. Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.
OnScrollViewerScrollChanged(ScrollChangedEventArgs)
Occurs when the scroll viewer's scroll is changed.
protected virtual void OnScrollViewerScrollChanged(ScrollChangedEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | ScrollChangedEventArgs | The event data. |
OnSelectionChanged(SelectionChangedEventArgs)
Occurs when the selection is changed.
protected virtual void OnSelectionChanged(SelectionChangedEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | SelectionChangedEventArgs | The event data. |
Remarks
This method has no default implementation. Because an intermediate class in the inheritance might implement this method, we recommend that you call the base implementation in your implementation.
PrepareContainerForItemOverride(DependencyObject, object)
Prepares the specified element to display the specified item.
protected override void PrepareContainerForItemOverride(DependencyObject element, object item)
| Parameter | Type | Description |
|---|---|---|
| element | DependencyObject | Element used to display the specified item. |
| item | object | Specified item. |
ProcessKeyDown(KeyEventArgs)
Processes a key down event.
protected virtual void ProcessKeyDown(KeyEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | KeyEventArgs | The event data. |
SelectItemByFullPath(string)
Sets the SelectedItem to the node with the specified full path.
public virtual bool SelectItemByFullPath(string fullPath)
| Parameter | Type | Description |
|---|---|---|
| fullPath | string | The full path to the node whose container should be selected. |
Returns
- bool:
trueif a node was selected; otherwise,false.
Remarks
This method requires that the ItemAdapter supplies a path for each item.
Events
FilterApplied
Occurs after the current filtering state has been applied to all of the control's items, generally occurring when DataFilter is changed, or filtering is enabled or disabled.
IsRootItemVisibleChanged
Occurs after the IsRootItemVisible property is changed.
ItemCollapsed
Occurs after an item is collapsed.
public event EventHandler<TreeListBoxItemExpansionEventArgs> ItemCollapsed
Event Type
ItemCollapsing
Occurs before an item is collapsed.
public event EventHandler<TreeListBoxItemExpansionEventArgs> ItemCollapsing
Event Type
Remarks
Set the event argument's Cancel property to true to prevent the collapse.
ItemDefaultActionExecuting
Occurs before the default action is executed for an item.
public event EventHandler<TreeListBoxItemEventArgs> ItemDefaultActionExecuting
Event Type
Remarks
Set the event argument's Cancel property to true to prevent a default action from executing,
which could be executing a DefaultActionCommand or toggling the item's expansion.
ItemExpanded
Occurs after an item is expanded.
public event EventHandler<TreeListBoxItemExpansionEventArgs> ItemExpanded
Event Type
ItemExpanding
Occurs before an item is expanded.
public event EventHandler<TreeListBoxItemExpansionEventArgs> ItemExpanding
Event Type
Remarks
Set the event argument's Cancel property to true to prevent the expansion.
ItemMenuRequested
Occurs when an item requests a context menu.
public event EventHandler<TreeListBoxItemMenuEventArgs> ItemMenuRequested
Event Type
ItemSelecting
Occurs before an item is selected.
public event EventHandler<TreeListBoxItemEventArgs> ItemSelecting
Event Type
Remarks
Set the event argument's Cancel property to true to prevent the selection.
RootItemChanged
Occurs after the RootItem property is changed.
SelectionChanged
Occurs when the selection is changed.
Fields
AutoExpandItemsOnFilterProperty
Defines the AutoExpandItemsOnFilter property.
public static readonly DependencyProperty AutoExpandItemsOnFilterProperty
CanDragItemsProperty
Defines the CanDragItems property.
public static readonly DependencyProperty CanDragItemsProperty
CanSelectItemOnFocusProperty
Defines the CanSelectItemOnFocus property.
public static readonly DependencyProperty CanSelectItemOnFocusProperty
DataFilterProperty
Defines the DataFilter property.
public static readonly DependencyProperty DataFilterProperty
EmptyContentProperty
Defines the EmptyContent property.
public static readonly DependencyProperty EmptyContentProperty
EmptyContentTemplateProperty
Defines the EmptyContentTemplate property.
public static readonly DependencyProperty EmptyContentTemplateProperty
FilterAppliedEvent
Defines the FilterApplied routed event.
public static readonly RoutedEvent FilterAppliedEvent
HasTreeLinesProperty
Defines the HasTreeLines property.
public static readonly DependencyProperty HasTreeLinesProperty
IndentIncrementProperty
Defines the IndentIncrement property.
public static readonly DependencyProperty IndentIncrementProperty
IsDataVirtualizationEnabledProperty
Defines the IsDataVirtualizationEnabled property.
public static readonly DependencyProperty IsDataVirtualizationEnabledProperty
IsEmptyProperty
Defines the IsEmpty property.
public static readonly DependencyProperty IsEmptyProperty
IsFilterActiveProperty
Defines the IsFilterActive property.
public static readonly DependencyProperty IsFilterActiveProperty
IsRootItemVisibleChangedEvent
Defines the IsRootItemVisibleChanged routed event.
public static readonly RoutedEvent IsRootItemVisibleChangedEvent
IsRootItemVisibleProperty
Defines the IsRootItemVisible property.
public static readonly DependencyProperty IsRootItemVisibleProperty
IsSelectionActiveProperty
Defines the IsSelectionActive property.
public static readonly DependencyProperty IsSelectionActiveProperty
ItemAdapterProperty
Defines the ItemAdapter property.
public static readonly DependencyProperty ItemAdapterProperty
ItemCollapsedEvent
Defines the ItemCollapsed routed event.
public static readonly RoutedEvent ItemCollapsedEvent
ItemCollapsingEvent
Defines the ItemCollapsing routed event.
public static readonly RoutedEvent ItemCollapsingEvent
ItemDataFormat
Specifies the data format to use for item data.
public const string ItemDataFormat = "ActiproSoftware.TreeListBox.Items"
ItemDefaultActionExecutingEvent
Defines the ItemDefaultActionExecuting routed event.
public static readonly RoutedEvent ItemDefaultActionExecutingEvent
ItemExpandedEvent
Defines the ItemExpanded routed event.
public static readonly RoutedEvent ItemExpandedEvent
ItemExpandingEvent
Defines the ItemExpanding routed event.
public static readonly RoutedEvent ItemExpandingEvent
ItemMenuRequestedEvent
Defines the ItemMenuRequested routed event.
public static readonly RoutedEvent ItemMenuRequestedEvent
ItemSelectingEvent
Defines the ItemSelecting routed event.
public static readonly RoutedEvent ItemSelectingEvent
MultiDragKindProperty
Defines the MultiDragKind property.
public static readonly DependencyProperty MultiDragKindProperty
MultiSelectionKindProperty
Defines the MultiSelectionKind property.
public static readonly DependencyProperty MultiSelectionKindProperty
PathSeparatorProperty
Defines the PathSeparator property.
public static readonly DependencyProperty PathSeparatorProperty
RootItemChangedEvent
Defines the RootItemChanged routed event.
public static readonly RoutedEvent RootItemChangedEvent
RootItemProperty
Defines the RootItem property.
public static readonly DependencyProperty RootItemProperty
SelectedItemProperty
Defines the SelectedItem property.
public static readonly DependencyProperty SelectedItemProperty
SelectionChangedEvent
Defines the SelectionChanged routed event.
public static readonly RoutedEvent SelectionChangedEvent
SelectionModeProperty
Defines the SelectionMode property.
public static readonly DependencyProperty SelectionModeProperty
TopLevelIndentProperty
Defines the TopLevelIndent property.
public static readonly DependencyProperty TopLevelIndentProperty