DragDrop 类

定义

提供用于启动拖放操作的帮助器方法和字段(包括开始拖放操作的方法),并提供用于添加和移除拖放相关事件处理程序的工具。

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

注解

拖放通常是指一种数据传输方法,该方法涉及使用鼠标 (或其他一些指针设备) 选择一个或多个对象,将这些对象拖动到用户界面 (UI) 中所需的放置目标上,然后放置它们。 拖放操作类似于复制 (或剪切) 粘贴操作,该操作用于将数据从一个对象或应用程序传输到另一个对象或应用程序。 拖放操作通常涉及两方:拖动数据源自的拖动源和接收放置数据的放置目标。 拖放操作所需的事件和方法是在 DragDrop 类中定义的。 拖放事件是可以附加到任何 UIElementContentElement的附加事件。 拖放源和拖放目标可以是同一应用程序或不同应用程序中的 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

在进行拖放操作时不断出现,并启用放置源以结束拖放操作(取决于键/按钮状态)。

适用于

另请参阅