DragDrop 类

定义

提供用于启动拖放操作的帮助程序方法和字段,包括开始拖放操作的方法,以及用于添加和删除拖放相关事件处理程序的设施。

public ref class DragDrop abstract sealed
public static class DragDrop
type DragDrop = class
Public Class DragDrop
继承
DragDrop

注解

拖放通常是指数据传输方法,该方法涉及使用鼠标(或其他一些指向设备)选择一个或多个对象,将这些对象拖动到用户界面(UI)中的一些所需放置目标上,然后删除它们。 拖放操作类似于复制(或剪切)和粘贴操作,用于将数据从一个对象或应用程序传输到另一个对象。 拖放操作通常涉及两方:拖动数据源自的拖动源和接收已删除数据的放置目标。 拖放操作所需的事件和方法在类中 DragDrop 定义。 拖放事件是可附加到任何或任何 UIElement 事件的 ContentElement附加事件。 拖放目标可以是同一应用程序或不同应用程序中的 UI 元素。 但是,放置目标必须知道如何处理拖动源传递的数据。

注释

UIElementContentElement类包含拖放事件的别名,以便当这些类继承为基类时,这些事件将显示在类成员列表中。 将事件处理程序附加到其中一个类上的拖放事件时,处理程序会附加到基础 DragDrop 事件,并接收相同的事件数据实例。 有关示例,请参阅 UIElement.Drop

拖动源通过调用静态 DoDragDrop 方法并将传输的数据传递给它来启动拖放操作。 元素通常是拖动源时处理以下事件:

元素通常在删除目标时处理以下事件:

有关详细信息和示例,请参阅 拖放概述

字段

名称 说明
DragEnterEvent

标识 DragEnter 附加事件。

DragLeaveEvent

标识 DragLeave 附加事件。

DragOverEvent

标识 DragOver 附加事件。

DropEvent

标识 Drop 附加事件。

GiveFeedbackEvent

标识 GiveFeedback 附加事件。

PreviewDragEnterEvent

标识 PreviewDragEnter 附加事件。

PreviewDragLeaveEvent

标识 PreviewDragLeave 附加事件。

PreviewDragOverEvent

标识 PreviewDragOver 附加事件。

PreviewDropEvent

标识 PreviewDrop 附加事件。

PreviewGiveFeedbackEvent

标识 PreviewGiveFeedback 附加事件。

PreviewQueryContinueDragEvent

标识 PreviewQueryContinueDrag 附加事件。

QueryContinueDragEvent

标识 QueryContinueDrag 附加事件。

方法

名称 说明
AddDragEnterHandler(DependencyObject, DragEventHandler)

DragEnter 事件处理程序添加到指定的依赖项对象。

AddDragLeaveHandler(DependencyObject, DragEventHandler)

DragLeave 事件处理程序添加到指定的依赖项对象。

AddDragOverHandler(DependencyObject, DragEventHandler)

DragOver 事件处理程序添加到指定的依赖项对象。

AddDropHandler(DependencyObject, DragEventHandler)

Drop 事件处理程序添加到指定的依赖项对象。

AddGiveFeedbackHandler(DependencyObject, GiveFeedbackEventHandler)

GiveFeedback 事件处理程序添加到指定的依赖项对象。

AddPreviewDragEnterHandler(DependencyObject, DragEventHandler)

PreviewDragEnter 事件处理程序添加到指定的依赖项对象。

AddPreviewDragLeaveHandler(DependencyObject, DragEventHandler)

PreviewDragLeave 事件处理程序添加到指定的依赖项对象。

AddPreviewDragOverHandler(DependencyObject, DragEventHandler)

PreviewDragOver 事件处理程序添加到指定的依赖项对象。

AddPreviewDropHandler(DependencyObject, DragEventHandler)

PreviewDrop 事件处理程序添加到指定的依赖项对象。

AddPreviewGiveFeedbackHandler(DependencyObject, GiveFeedbackEventHandler)

PreviewGiveFeedback 事件处理程序添加到指定的依赖项对象。

AddPreviewQueryContinueDragHandler(DependencyObject, QueryContinueDragEventHandler)

PreviewQueryContinueDrag 事件处理程序添加到指定的依赖项对象。

AddQueryContinueDragHandler(DependencyObject, QueryContinueDragEventHandler)

QueryContinueDrag 事件处理程序添加到指定的依赖项对象。

DoDragDrop(DependencyObject, Object, DragDropEffects)

启动拖放操作。

RemoveDragEnterHandler(DependencyObject, DragEventHandler)

DragEnter从指定的依赖项对象中删除事件处理程序。

RemoveDragLeaveHandler(DependencyObject, DragEventHandler)

DragLeave从指定的依赖项对象中删除事件处理程序。

RemoveDragOverHandler(DependencyObject, DragEventHandler)

DragOver从指定的依赖项对象中删除事件处理程序。

RemoveDropHandler(DependencyObject, DragEventHandler)

Drop从指定的依赖项对象中删除事件处理程序。

RemoveGiveFeedbackHandler(DependencyObject, GiveFeedbackEventHandler)

GiveFeedback从指定的依赖项对象中删除事件处理程序。

RemovePreviewDragEnterHandler(DependencyObject, DragEventHandler)

PreviewDragEnter从指定的依赖项对象中删除事件处理程序。

RemovePreviewDragLeaveHandler(DependencyObject, DragEventHandler)

PreviewDragLeave从指定的依赖项对象中删除事件处理程序。

RemovePreviewDragOverHandler(DependencyObject, DragEventHandler)

PreviewDragOver从指定的依赖项对象中删除事件处理程序。

RemovePreviewDropHandler(DependencyObject, DragEventHandler)

PreviewDrop从指定的依赖项对象中删除事件处理程序。

RemovePreviewGiveFeedbackHandler(DependencyObject, GiveFeedbackEventHandler)

PreviewGiveFeedback从指定的依赖项对象中删除事件处理程序。

RemovePreviewQueryContinueDragHandler(DependencyObject, QueryContinueDragEventHandler)

PreviewQueryContinueDrag从指定的依赖项对象中删除事件处理程序。

RemoveQueryContinueDragHandler(DependencyObject, QueryContinueDragEventHandler)

QueryContinueDrag从指定的依赖项对象中删除事件处理程序。

附加活动

名称 说明
DragEnter

当对象被拖动到充当放置目标的元素的边界时发生。

DragLeave

当对象被拖出作为放置目标的元素的边界时发生,而不会被删除。

DragOver

在对象被拖动到充当放置目标的元素的边界内时连续发生。

Drop

在作为放置目标的元素的边界内删除对象时发生。

GiveFeedback

在拖放操作正在进行时连续发生,并使拖动源能够向用户提供反馈。

PreviewDragEnter

当对象被拖动到充当放置目标的元素的边界时发生。

PreviewDragLeave

当对象被拖出作为放置目标的元素的边界时发生,而不会被删除。

PreviewDragOver

在对象被拖动到充当放置目标的元素的边界内时连续发生。

PreviewDrop

在作为放置目标的元素的边界内删除对象时发生。

PreviewGiveFeedback

在拖放操作正在进行时连续发生,并使拖动源能够向用户提供反馈。

PreviewQueryContinueDrag

在拖放操作正在进行时连续发生,并使拖放源能够根据键/按钮状态结束拖放操作。

QueryContinueDrag

在拖放操作正在进行时连续发生,并使拖放源能够根据键/按钮状态结束拖放操作。

适用于

另请参阅