UWP ListView 拖放 [英] UWP ListView Drag and Drop

查看:19
本文介绍了UWP ListView 拖放的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我将从 ListView 中拖出一个项目来放置一个框来处理某些事情.

I am going to drag an item from a ListView to drop a box to process something.

在这种情况下,我无法获得选定的 ListView 项目.选定的索引/项目总是返回 -1/null.

In this case, I am not able to get selected ListView item. Selected Index/Items always returns -1/null.

注意:使用 SelectionChanged 时,我能够获得选定的列表视图项.但无法获得 drop 事件.请指教.

Note: I am able to get selected listview item when using SelectionChanged. But not able to get drop event. Please advise.

XAML 源:

<ListView x:Name="lvMaster" CanDragItems="True" SelectionChanged="lvMaster_SelectionChanged" />

<Grid AllowDrop="True" Drop="Drop_Event" DragOver="DragOver_Event">        
</Grid>

C# 源代码:

private void Drop_Event(object sender, DragEventArgs e)
{
    lvObj = new ListView();
    ListView)sender; 
}

private void DragOver_Event(object sender, DragEventArgs e)
{
    AcceptedOperation = DataPackageOperation.Copy;          
    DragUIOverride.IsCaptionVisible = true;
    DragUIOverride.IsContentVisible = true;
}

推荐答案

您可以注册 DragItemsStarting 事件DragItemsCompleted 事件 用于您的列表视图,然后在其处理程序方法中,您可以获得您拖动的所有项目.

You can register DragItemsStarting event or DragItemsCompleted event for your listview, then in its handler method, you could get all items you dragged.

private void SourceListView_DragItemsCompleted(ListViewBase sender, DragItemsCompletedEventArgs args)
{
    var cc = args.Items;
}

请参考官方拖放示例了解更多详情.

Please refer to the official Drag and Drop sample for more details.

这篇关于UWP ListView 拖放的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆