版本:Unity 6 (6000.0)
语言英语
  • C#

BaseTreeView

UnityEngine.UIElements 中的类

/

继承自:UIElements.BaseVerticalCollectionView

/

在以下位置实现:UnityEngine.UIElementsModule

建议修改

成功!

感谢您帮助我们改进 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实会阅读用户提出的每项建议更改,并在适用的情况下进行更新。

关闭

提交失败

由于某种原因,您的建议更改无法提交。请 <a>稍后再试</a>。感谢您抽出时间帮助我们改进 Unity 文档的质量。

关闭

取消

描述

树视图的基类,一个垂直可滚动区域,链接到并显示以树形结构组织的项目列表。

静态属性

itemContentContainerUssClassNameTreeView 项目容器元素的 USS 类名称。
itemIndentUssClassNameTreeView 缩进元素的 USS 类名称。
itemToggleUssClassNameTreeView 项目切换元素的 USS 类名称。
itemUssClassNameTreeView 项目元素的 USS 类名称。
ussClassNameTreeView 元素的 USS 类名称。

属性

autoExpand如果为真,则在将项目添加到 TreeView 时自动展开项目。
itemsSource访问 itemsSource。对于 TreeView,源包含项目包装器。
viewController此视图的视图控制器,强制转换为 BaseTreeViewController。

构造函数

BaseTreeView创建一个具有所有默认属性的 TreeView。

公共方法

AddItem向现有树添加一个项目。
AddToSelectionById根据 ID 将项目添加到当前选择中。
CollapseAll折叠所有 TreeView 项目,包括子项目。
CollapseItem折叠指定的 TreeView 项目。
ExpandAll展开所有 TreeView 项目,包括子项目。
ExpandItem展开指定的 TreeView 项目。
ExpandRootItems展开所有根 TreeView 项目。
GetChildrenIdsForIndex获取指定 TreeView 项目的子标识符。
GetIdForIndex获取指定 TreeView 项目的标识符。
GetItemDataForId获取指定 TreeView 项目 ID 的数据。
GetItemDataForIndex获取指定 TreeView 项目索引的数据。
GetParentIdForIndex获取指定 TreeView 项目的父标识符。
GetRootIds获取根项目标识符。
GetSelectedItems获取所选项目索引的树数据。
GetTreeCount获取 TreeView 的项目总数。
IsExpanded如果指定的 TreeView 项目已展开,则返回 true,否则返回 false。
RemoveFromSelectionById根据 ID 从当前选择中移除项目。
SetRootItems设置要与默认树视图控制器一起使用的根项目。
SetSelectionById根据 ID 设置当前选定的项目。
SetSelectionByIdWithoutNotify根据 ID 设置选定项目集合,不触发选择更改回调。
SetViewController为此视图分配视图控制器,并注册其正常运行所需的所有事件。
TryRemoveItem如果可以找到,则移除树中的项目。

事件

itemExpandedChanged在展开或折叠项目时引发。

继承的成员

静态属性

borderUssClassName具有边框的 BaseVerticalCollectionView 元素的 USS 类名称。
dragHoverBarUssClassName拖动悬停栏的 USS 类名称。
dragHoverMarkerUssClassName用于指示深度的拖动悬停圆形标记的 USS 类名称。
itemAlternativeBackgroundUssClassNameBaseVerticalCollectionView 中奇数行的 USS 类名称。
itemDragHoverUssClassName拖动悬停时应用于项目元素的 USS 类名称。
itemSelectedVariantUssClassNameBaseVerticalCollectionView 中选定项目元素的 USS 类名称。
itemUssClassNameBaseVerticalCollectionView 元素中项目元素的 USS 类名称。
listScrollViewUssClassNameBaseVerticalCollectionView 中滚动视图的 USS 类名称。
ussClassNameBaseVerticalCollectionView 元素的 USS 类名称。
disabledUssClassName本地禁用元素的 USS 类名称。

属性

contentContainer返回 BaseVerticalCollectionView 的内容容器。因为 BaseVerticalCollectionView 控件会自动管理其内容,所以这始终返回 null。
fixedItemHeight列表中单个项目的像素高度。
horizontalScrollingEnabled此属性控制当集合视图的内容不适合可见区域时是否显示水平滚动条。
itemsSource集合项目的資料來源。
reorderable获取或设置一个值,指示用户是否可以拖动列表项以重新排序它们。
selectedIds返回数据源中选定项目的持久 ID,无论它们是否已折叠。始终返回可枚举,即使没有选择任何项目,或者仅选择了一个项目。
selectedIndex返回或设置数据源中选定项目的索引。如果选择了多个项目,则返回第一个选定项目的索引。如果提供了多个项目,则将它们全部设置为选中状态。
selectedIndices返回数据源中选定项目的索引。始终返回可枚举,即使没有选择任何项目,或者仅选择了一个项目。
selectedItem返回数据源中的选定项目。如果选择了多个项目,则返回第一个选定项目。
selectedItems返回数据源中的选定项目。始终返回可枚举,即使没有选择任何项目,或者仅选择了一个项目。
selectionType控制选择类型。
showAlternatingRowBackgrounds此属性控制集合视图行是否交替显示背景颜色。从 AlternatingRowBackground 枚举中获取一个值。
showBorder启用此属性以在集合视图周围显示边框。
viewController此视图的视图控制器。
virtualizationMethod当滚动条可见时,此集合要使用的虚拟化方法。从 CollectionVirtualizationMethod 枚举中获取一个值。
binding将要更新的绑定对象。
bindingPath要绑定的目标属性的路径。
canGrabFocus如果元素可以获得焦点,则返回 true。
delegatesFocus元素是否应该将焦点委托给其子元素。
focusable如果元素可以获得焦点,则为 true。
focusController返回此元素的焦点控制器。
tabIndex用于在焦点环中对可聚焦元素进行排序的整数。必须大于或等于零。
childCount此对象的 contentContainer 中子元素的数量。
contentRect元素内容区域的矩形,位于元素的本地空间中。(只读)
customStyleVisualElement 的自定义样式属性访问器。(只读)
dataSource为这个 VisualElement 指定一个数据源,它覆盖任何继承的数据源。此数据源由所有子元素继承。
dataSourcePath从数据源到值的路径。
dataSourceType可以分配给这个 VisualElement 的数据源的可能类型。此信息仅由 UI Builder 使用,作为在设计时无法指定有效数据源时提供数据源路径字段的一些完成提示。
disablePlayModeTint除非将此设置为 true,否则默认情况下会应用播放模式色调。它会以分层方式应用于此 VisualElement 以及位于编辑器面板上的所有子元素。
enabledInHierarchy如果 VisualElement 在其自己的层次结构中已启用,则返回 true。
enabledSelf如果 VisualElement 在本地已启用,则返回 true。
experimental返回 UIElements 实验性接口。
generateVisualContent用于生成可视元素的可视内容的委托函数。
hierarchy访问此元素的物理层次结构
languageDirection指示元素文本的方向。该值将传播到元素的子元素。
layoutVisualElement 相对于其父元素的位置和大小,由布局系统计算。(只读)
localBound返回一个 Rect,表示应用变换后但应用布局转换之前,轴对齐边界框 (AABB)。
name此 VisualElement 的名称。
paddingRect元素填充区域的矩形,位于元素的本地空间中。
panel此 VisualElement 附加到的面板。
parent此 VisualElement 的父元素。
pickingMode确定此元素是否可以在鼠标事件或 IPanel.Pick 查询期间被拾取。
resolvedStyle可视元素的最终渲染样式值,如当前帧中呈现的那样。(只读)
scaledPixelsPerPoint返回来自面板的结果缩放,该缩放考虑屏幕 DPI 和可自定义的缩放因子,但不考虑元素及其祖先的变换缩放。请参见 Panel.scaledPixelsPerPoint。这应该只在属于面板的元素上调用。
schedule检索此 VisualElement 的 IVisualElementScheduler
style在 VisualElement 上设置样式值。
styleSheets返回一个 VisualElementStyleSheetSet,它操纵附加到此元素的样式表。
this[int]检索特定索引处的子元素。
tooltip在用户将鼠标悬停在元素上一段时间后,将在信息框内显示的文本。这仅在编辑器 UI 中受支持。
transform返回此 VisualElement 的变换对象。ITransform
usageHints一组提示值,指定 VisualElement 的高级预期使用模式。此属性只能在 VisualElement 尚未成为 Panel 的一部分时设置。一旦成为 Panel 的一部分,此属性就变得实际上是只读的,尝试更改它将引发异常。正确 UsageHints 的规范驱动系统根据预期的使用模式做出更好的决策,关于如何处理或加速某些操作。请注意,这些提示不会影响行为或视觉结果,而只会影响面板及其内部元素的整体性能。建议始终考虑指定正确的 UsageHints,但请记住,在某些情况下,某些 UsageHints 可能在内部被忽略(例如,由于目标平台上的硬件限制)。
userData此属性可用于将应用程序特定的用户数据与此 VisualElement 关联。
viewDataKey用于视图数据持久性,例如树展开状态、滚动位置或缩放级别。
visible指示是否应渲染此元素。
visualTreeAssetSource存储资产引用,如果生成的元素是从 VisualTreeAsset 克隆的。
worldBound返回一个 Rect,表示应用世界变换后的轴对齐包围盒 (AABB)。
worldTransform返回一个矩阵,该矩阵累积以下操作(按顺序):- 本地缩放 - 本地旋转 - 本地平移 - 布局平移 - 父世界变换(递归定义 - 如果没有父级,则考虑单位矩阵)

公共方法

AddToSelection将项目添加到选定项目的集合中。
ClearSelection取消选择所有选定项目。
GetRootElementForId获取指定集合视图项目的根元素。
GetRootElementForIndex获取指定集合视图项目的根元素。
Rebuild清除集合视图,重新创建所有可见的视觉元素,并重新绑定所有项目。
RefreshItem如果项目当前在集合视图中可见,则重新绑定单个项目。
RefreshItems重新绑定所有当前可见的项目。
RemoveFromSelection从选定项目的集合中删除项目。
ScrollTo滚动到特定 VisualElement。
ScrollToItem滚动到特定项目索引并使其可见。
ScrollToItemById滚动到特定项目 ID 并使其可见。
SetSelection设置当前选定项目。
SetSelectionWithoutNotify设置选定项目的集合,而不触发选择更改回调。
HasBubbleUpHandlers如果事件处理程序已附加到此对象,则返回 true,表示该对象已附加到该对象事件传播的 BubbleUp 阶段的事件处理程序。
HasTrickleDownHandlers如果事件处理程序已附加到此对象,则返回 true,表示该对象已附加到该对象事件传播的 TrickleDown 阶段的事件处理程序。
RegisterCallback向实例添加事件处理程序。如果事件处理程序已针对同一阶段(TrickleDown 或 BubbleUp)注册,则此方法无效。
RegisterCallbackOnce向实例添加事件处理程序。如果事件处理程序已针对同一阶段(TrickleDown 或 BubbleUp)注册,则此方法无效。事件处理程序在恰好被调用一次后自动取消注册。
UnregisterCallback从实例中删除回调。
Blur告诉元素释放焦点。
Focus尝试将焦点赋予此元素。
Add将元素添加到此元素的 contentContainer 中。
AddToClassList向元素的类列表中添加一个类,以从 USS 分配样式。请注意,类名称区分大小写。
BringToFront将此元素移至其父级子级列表的末尾。该元素将在视觉上位于任何重叠的兄弟元素前面。
Children返回其 contentContainer 中的元素。
ClassListContains在此元素的类列表中搜索类。
Clear从此元素的 contentContainer 中删除所有子元素。
ClearBinding从元素中删除绑定。
ClearBindings从元素中删除所有绑定。
ClearClassList从此元素的类列表中删除所有类。AddToClassList
Contains检查此元素是否为指定子元素的祖先。
ContainsPoint检查指定点是否与此 VisualElement 的布局相交。
ElementAt检索特定索引处的子元素。
EnableInClassList启用或禁用具有给定名称的类。
FindAncestorUserData向上搜索此 VisualElement 的层次结构,并检索存储的 userData(如果有)。
FindCommonAncestor在 VisualTree 层次结构中查找两个 VisualElement 之间的最低共同祖先。
GetBinding获取为提供的目标属性提供的绑定实例。
GetBindingInfos获取有关当前元素所有绑定的信息。
GetClasses检索此元素的类。
GetDataSourceContext查询绑定对象的 dataSource 和 dataSourcePath。
GetFirstAncestorOfType从此元素的父级开始向上遍历层次结构,并返回此类型的第一个 VisualElement。
GetFirstOfType从此元素开始向上遍历层次结构,并返回此类型的第一个 VisualElement。
GetHierarchicalDataSourceContext查询从层次结构继承的 dataSource 和 dataSourcePath。
HasBinding允许知道目标属性是否与之关联的绑定。
IndexOf检索指定 VisualElement 的子级索引。
Insert将元素插入此元素的 contentContainer 中。
MarkDirtyRepaint在下一帧触发 VisualElement 的重绘。当发生需要重绘的更改时,此方法会在内部调用,例如当 UIElements.BaseField_1.value 发生更改或 Label 中的文本发生更改时。如果您正在实现自定义控件,则可以在发生需要重绘的更改时调用此方法以触发重绘,例如当使用 generateVisualContent 渲染网格且网格数据现在已更改时。
PlaceBehind将此元素放置在其父级子级列表中兄弟元素的前面。如果元素和兄弟元素的位置重叠,则元素将在视觉上位于其兄弟元素的后面。
PlaceInFront将此元素放置在其父级子级列表中兄弟元素的后面。如果元素和兄弟元素的位置重叠,则元素将在视觉上位于其兄弟元素的前面。
Remove从 contentContainerhierarchy 中删除此子元素。
RemoveAt从此元素的 contentContainer 中删除位于此位置的子元素。
RemoveFromClassList从元素的类列表中删除一个类。
RemoveFromHierarchy从其父级层次结构中删除此元素。
SendEvent将事件发送到事件处理程序。
SendToBack将此元素发送到其父级子级列表的开头。该元素将在视觉上位于任何重叠的兄弟元素的后面。
SetBinding在目标和源之间分配绑定。
SetEnabled更改 VisualElement 的启用状态。禁用的 VisualElement 不会接收大多数事件。
Sort重新排序从此 VisualElement contentContainer 中的子元素。
ToggleInClassList在将给定类名称添加到类列表和从类列表中删除给定类名称之间切换。
TryGetBinding获取为提供的目标属性提供的绑定实例。
TryGetDataSourceContext查询绑定对象的 dataSource 和 dataSourcePath。
TryGetLastBindingToSourceResult返回从 UI 到数据源的绑定对象的最后一个 BindingResult。
TryGetLastBindingToUIResult返回从数据源到 UI 的绑定对象的最后一个 BindingResult。

受保护方法

CreateViewController为该视图创建视图控制器。在继承者中重写此方法以更改控制器类型。
HandleEventBubbleUp在 BubbleUp 阶段在此元素上执行逻辑,该逻辑紧接在该元素的 BubbleUp 回调之前。调用 StopPropagation 将阻止沿着传播路径进一步调用此方法。
HandleEventTrickleDown在 TrickleDown 阶段在此元素上执行逻辑,该逻辑紧接在该元素的 TrickleDown 回调之后。调用 StopPropagation 将阻止沿着传播路径进一步调用此方法。
NotifyPropertyChanged通知数据绑定系统控件的属性已更改。

事件

canStartDrag当拖放操作想要在此集合视图中开始时调用。
dragAndDropUpdate当拖放操作在此集合视图中更新时调用。
handleDrop当拖放操作在此集合视图中释放时调用。
itemIndexChanged当项目在 itemsSource 中移动时调用。
itemsChosen当用户对一个或多个项目的选定内容执行操作时触发回调,例如双击或按 Enter 键。
itemsSourceChanged当垂直集合视图的数据源分配新的引用或新的类型时引发。
onItemsChosen已弃用。请改用 BaseVerticalCollectionView.itemsChosen。
onSelectedIndicesChange已弃用。请改用 BaseVerticalCollectionView.selectedIndicesChanged。
onSelectionChange已弃用。请改用 BaseVerticalCollectionView.selectionChanged。
selectedIndicesChanged当选择发生更改时触发回调。
selectionChanged当选择发生更改时触发回调。
setupDragAndDrop当拖放操作在此集合视图中开始时调用。