class in UnityEngine.UIElements
/
Inherits from:UIElements.BaseTreeView
/
Implemented in:UnityEngine.UIElementsModule
A TreeView is a vertically scrollable area that links to, and displays, a list of items organized in a tree.
A TreeView is a ScrollView with additional logic to display a tree of vertically-arranged
VisualElements. Each VisualElement in the tree is bound to a corresponding element in a data-source list. The
data-source list can contain elements of any type.
The logic required to create VisualElements, and to bind them to or unbind them from the data source, varies depending
on the intended result. It's up to you to implement logic that is appropriate to your use case. For the ListView to function
correctly, you must supply at least the following:
- BaseVerticalCollectionView.fixedItemHeight
It is also recommended to supply the following for more complex items:
FixedHeight ListView The TreeView creates VisualElements for the visible items, and supports binding many more. As the user scrolls, the TreeView
recycles VisualElements and re-binds them to new data items.
For more information, refer to UXML element TreeView.
| Description | |
|---|---|
| bindItem | Callback for binding a data item to the visual element. |
| destroyItem | Callback invoked when a VisualElement created via makeItem is no longer needed and will be destroyed. |
| itemTemplate | A UXML template that constructs each recycled and rebound element within the tree. This template is designed to replace the makeItem definition. |
| makeItem | Callback for constructing the VisualElement that is the template for each recycled and re-bound element in the list. |
| unbindItem | Callback for unbinding a data item from the VisualElement. |
| viewController | The view controller for this view, cast as a TreeViewController. |
| Description | |
|---|---|
| TreeView | Creates a TreeView with all default properties. |
| Description | |
|---|---|
| itemContentContainerUssClassName | The USS class name for TreeView item container elements. |
| itemIndentUssClassName | The USS class name for TreeView indent element. |
| itemToggleUssClassName | The USS class name for TreeView item toggle elements. |
| itemUssClassName | The USS class name for TreeView item elements. |
| ussClassName | The USS class name for TreeView elements. |
| borderUssClassName | The USS class name for BaseVerticalCollectionView elements with a border. |
| dragHoverBarUssClassName | The USS class name of the drag hover bar. |
| dragHoverMarkerUssClassName | The USS class name of the drag hover circular marker used to indicate depth. |
| itemAlternativeBackgroundUssClassName | The USS class name for odd rows in the BaseVerticalCollectionView. |
| itemDragHoverUssClassName | The USS class name applied to an item element on drag hover. |
| itemSelectedVariantUssClassName | The USS class name of selected item elements in the BaseVerticalCollectionView. |
| listScrollViewUssClassName | The USS class name of the scroll view in the BaseVerticalCollectionView. |
| disabledUssClassName | USS class name of local disabled elements. |
| Description | |
|---|---|
| autoExpand | When true, items are automatically expanded when added to the TreeView. |
| itemsSource | Access to the itemsSource. For a TreeView, the source contains the items wrappers. |
| viewController | The view controller for this view, cast as a BaseTreeViewController. |
| contentContainer | Returns the content container for the BaseVerticalCollectionView. Because the BaseVerticalCollectionView control automatically manages its content, this always returns null. |
| fixedItemHeight | The height of a single item in the list, in pixels. |
| horizontalScrollingEnabled | This property controls whether the collection view shows a horizontal scroll bar when its content does not fit in the visible area. |
| reorderable | Gets or sets a value that indicates whether the user can drag list items to reorder them. |
| selectedIds | Returns the persistent IDs of selected items in the data source, regardless of whether they are collapsed or not. Always returns an enumerable, even if no item is selected, or a single item is selected. |
| selectedIndex | Returns or sets the selected item's index in the data source. If multiple items are selected, returns the first selected item's index. If multiple items are provided, sets them all as selected. If no item is selected, returns -1. |
| selectedIndices | Returns the indices of selected items in the data source. Always returns an enumerable, even if no item is selected, or a single item is selected. |
| selectedItem | Returns the selected item from the data source. If multiple items are selected, returns the first selected item. |
| selectedItems | Returns the selected items from the data source. Always returns an enumerable, even if no item is selected, or a single item is selected. |
| selectionType | Controls the selection type. |
| showAlternatingRowBackgrounds | This property controls whether the background colors of collection view rows alternate. Takes a value from the AlternatingRowBackground enum. |
| showBorder | Enable this property to display a border around the collection view. |
| virtualizationMethod | The virtualization method to use for this collection when a scroll bar is visible. Takes a value from the CollectionVirtualizationMethod enum. |
| binding | Binding object that will be updated. |
| bindingPath | Path of the target property to be bound. |
| canGrabFocus | Return true if the element can be focused. |
| delegatesFocus | Whether the element should delegate the focus to its children. |
| focusable | True if the element can be focused. |
| focusController | Return the focus controller for this element. |
| tabIndex | An integer used to sort focusables in the focus ring. Must be greater than or equal to zero. |
| childCount | Number of child elements in this object's contentContainer. |
| contentRect | The rectangle of the content area of the element, in the local space of the element. (Read Only) |
| customStyle | The custom style properties accessor of a VisualElement (Read Only). |
| dataSource | Assigns a data source to this VisualElement which overrides any inherited data source. This data source is inherited by all children. |
| dataSourcePath | Path from the data source to the value. |
| dataSourceType | The possible type of data source assignable to this VisualElement. This information is only used by the UI Builder as a hint to provide some completion to the data source path field when the effective data source cannot be specified at design time. |
| disablePlayModeTint | Play-mode tint is applied by default unless this is set to true. It's applied hierarchically to this VisualElement and to all its children that exist on an editor panel. |
| enabledInHierarchy | Returns true if the VisualElement is enabled in its own hierarchy. |
| enabledSelf | Returns true if the VisualElement is enabled locally. |
| experimental | Returns the UIElements experimental interfaces. |
| generateVisualContent | Delegate function to generate the visual content of a visual element. |
| hierarchy | Access to this element physical hierarchy |
| languageDirection | Indicates the directionality of the element's text. The value will propagate to the element's children. |
| layout | The position and size of the VisualElement relative to its parent, as computed by the layout system. (Read Only) |
| localBound | Returns a Rect representing the Axis-aligned Bounding Box (AABB) after applying the transform, but before applying the layout translation. |
| name | The name of this VisualElement. |
| paddingRect | The rectangle of the padding area of the element, in the local space of the element. |
| panel | The panel onto which this VisualElement is attached. |
| parent | The parent of this VisualElement. |
| pickingMode | Determines if this element can be pick during mouseEvents or IPanel.Pick queries. |
| resolvedStyle | The final rendered style values of a visual element, as it's rendered in the current frame.(Read Only) |
| scaledPixelsPerPoint | Return the resulting scaling from the panel that considers the screen DPI and the customizable scaling factor, but not the transform scale of the element and its ancestors. See Panel.scaledPixelsPerPoint. This should only be called on elements that are part of a panel. |
| schedule | Retrieves this VisualElement's IVisualElementScheduler |
| style | Sets the style values on a VisualElement. |
| styleSheets | Returns a VisualElementStyleSheetSet that manipulates style sheets attached to this element. |
| this[int] | Retrieves the child element at a specific index. |
| tooltip | Text to display inside an information box after the user hovers the element for a small amount of time. This is only supported in the Editor UI. |
| transform | Returns a transform object for this VisualElement. ITransform |
| usageHints | A combination of hint values that specify high-level intended usage patterns for the VisualElement. This property can only be set when the VisualElement is not yet part of a Panel. Once part of a Panel, this property becomes effectively read-only, and attempts to change it will throw an exception. The specification of proper UsageHints drives the system to make better decisions on how to process or accelerate certain operations based on the anticipated usage pattern. Note that those hints do not affect behavioral or visual results, but only affect the overall performance of the panel and the elements within. It's advised to always consider specifying the proper UsageHints, but keep in mind that some UsageHints might be internally ignored under certain conditions (e.g. due to hardware limitations on the target platform). |
| userData | This property can be used to associate application-specific user data with this VisualElement. |
| viewDataKey | Used for view data persistence, such as tree expanded states, scroll position, or zoom level. |
| visible | Indicates whether or not this element should be rendered. |