UIElement.StartDragAsync(PointerPoint) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
启动拖放操作。
public:
virtual IAsyncOperation<DataPackageOperation> ^ StartDragAsync(PointerPoint ^ pointerPoint) = StartDragAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<DataPackageOperation> StartDragAsync(PointerPoint const& pointerPoint);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<DataPackageOperation> StartDragAsync(PointerPoint pointerPoint);
function startDragAsync(pointerPoint)
Public Function StartDragAsync (pointerPoint As PointerPoint) As IAsyncOperation(Of DataPackageOperation)
参数
- pointerPoint
- PointerPoint
用户与屏幕交互的指针的坐标,以及拖动视觉对象附加的位置。
返回
一个 DataPackageOperation 值,该值指示拖放操作的类型以及操作是否成功。
- 属性
示例
此示例演示如何处理 Image 元素上的 PointerPressed 事件以启动拖动操作。
<Image x:Name="myImage" Source="ms-appx:///Assets/Logo.png"
PointerPressed="myImage_PointerPressed" />
private async void myImage_PointerPressed(object sender, PointerRoutedEventArgs e)
{
var pointerPoint = e.GetCurrentPoint(sender as UIElement);
var dropStatus = await myImage.StartDragAsync(pointerPoint);
if (dropStatus == DataPackageOperation.Move)
{
// App specific code for a "move" operation.
}
}
注解
如果实现自定义手势检测以启动拖动操作,则可以调用 StartDragAsync 方法,以编程方式在任何 UIElement 上启动拖动操作。 调用此方法会导致引发 DragStarting 事件。 处理 DragStarting 事件以指定操作的其他属性,例如数据包和拖动视觉对象。
pointerPoint 参数是用户使用输入设备 (触摸、鼠标或笔) 与屏幕交互的点。 拖动操作期间显示的拖动视觉对象附加到调用方提供的 PointerPoint 中指示的指针。
此方法返回的 DataPackageOperation 指示拖动操作是移动、复制还是链接;以及是否成功。 此值与 DropCompleted 事件参数中的 DropResult 属性提供的值相同。