Version: 6000.3
语言: 中文
命令事件
布局事件

拖放事件

拖动事件在作期间发送,其中视觉元素实例化或派生自 C# 的可视化树的节点VisualElement类。您可以设置外观样式、定义行为并将其作为 UI 的一部分显示在屏幕上。更多信息
请参阅术语表
具有拖放行为。这是仅限编辑的活动。

若要实现拖放功能,请确保视觉元素为特定事件注册回调。

支持拖动作的视觉元素分为两种类型:

  • 可拖动的视觉元素
  • 可掉落的视觉元素

您可以选择可拖动的视觉元素,将其拖动到可放置的视觉元素,然后释放该元素以将其放置。

所有拖放事件的基类是 DragAndDropEventBase

事件 描述 涓涓细流 气泡升起 可取消
DragExitedEvent 拖放过程结束时发送。
拖动更新事件 当拖动的元素移动到放置目标上时发送。
拖动执行事件 当拖动的元素落到目标上时发送。
DragEnter事件 当拖动的元素进入新的VisualElement.
拖动离开事件 当拖动的元素退出当前放置目标时发送。

使视觉元素可拖动

要使可视元素可拖动,您需要在以下三种事件类型上注册回调:

使用以下步骤进行拖动作:

  1. 将其状态设置为“正在拖动”。
  2. 将适当的数据添加到DragAndDrop.
  3. DragAndDrop.StartDrag().
  4. 为拖动作提供视觉提示。放置区域视觉元素在收到DragPerformEventDragExitedEvent.

活动列表

DragExitedEvent

DragExitedEvent当用户将任何可拖动对象拖动到视觉元素上并释放鼠标指针时,会发送。当放置区域可视元素收到DragExitedEvent,则需要从拖动作中删除所有反馈。

拖动更新事件

DragUpdatedEvent当用户移动可拖动对象时,指针移动到视觉元素上时发送。

当放置区域可视元素收到DragUpdatedEvent,它需要更新掉落反馈。例如,您可以移动拖动对象的“重影”,使其停留在鼠标指针下方。

放置区域视觉元素还应检查DragAndDropproperties 和 setDragAndDrop.visualMode以指示丢弃作的效果。例如,删除作可以创建新对象、移动现有对象或拒绝删除作。

拖动执行事件

DragPerformEvent当用户拖动任何可拖动对象并将鼠标指针释放到视觉元素上时,会发送。仅当可视元素将DragAndDrop.visualMode设置为DragAndDropVisualMode.NoneDragAndDropVisualMode.Rejected以指示它可以接受拖动的对象。

当放置区域可视元素收到DragPerformEvent,它需要作用于存储在DragAndDrop.objectReferences,DragAndDrop.pathsDragAndDrop.GetGenericData().

例如,它可能会在用户放置对象的位置添加新的视觉元素。

DragEnter事件

DragEnterEvent在拖动作期间指针进入视觉元素时发送。

当放置区域可视元素收到DragEnterEvent,它需要提供反馈,让用户知道它或其子级之一是潜在丢弃作的目标。例如,您可以将 USS 类添加到目标元素,并在鼠标指针下显示拖动对象的“幽灵”。

拖动离开事件

DragLeaveEvent当用户移动可拖动对象时指针退出可视元素时发送。

当放置区域可视元素收到DragLeaveEvent,它需要停止提供下降反馈。例如,您可以删除在目标元素收到DragEnterEvent,并且不再显示拖动对象的“重影”。

例子

命令事件
布局事件