【问题标题】:ListView UWP Drag Reorder doesn't fire Drop eventsListView UWP Drag Reorder 不会触发 Drop 事件
【发布时间】:2016-02-17 19:28:23
【问题描述】:

我正在尝试在我的 UWP 项目中重新排序 ListView。

     <ListView Grid.Row="1" Name="List" Margin="12, 0, 12, 0"
               ItemTemplate="{StaticResource ListDataTemplate}" 
               SelectionMode="None" IsItemClickEnabled="True" ItemClick="List_ItemClick" 
               AllowDrop="True" CanReorderItems="True" ReorderMode="Enabled"
               DropCompleted="List_DropCompleted" />

在后面的代码中:

    private void List_DropCompleted(UIElement sender,DropCompletedEventArgs args)
    {
        UseManualOrder = true;
    }

用户界面效果很好。我可以通过鼠标单击并拖动或在手机上触摸并拖动来拖动和重新排序。但是,我无法在后面的代码中触发任何拖放事件。我试过了:放下;掉落完成;拖动项目完成。没有人会开火。我已经尝试了所有我能想到的。

我在后面的代码中的其他事件(如 List_ItemClick)工作正常。

有人知道我错过了什么吗?

【问题讨论】:

  • 我添加了 CanDragItems="True" 和 DragItemsCompleted 对我来说很好。给你?

标签: listview gridview drag-and-drop win-universal-app


【解决方案1】:

我试过了:Drop;掉落完成;拖动项目完成。没有人会开火。

经测试,Drop event 和 DragItemsCompleted event 可以着火。当您使用这些事件时,您需要为您的ListView 启用AllowDrop="True" 和CanDragItems="True"。

还用其他控件测试了DropCompleted event,此事件暂时不会触发。

但是这个问题不会影响Drop and Drag的实现,你可以参考官方Drag and drop sample,看看如何在这个示例中让它们工作。

【讨论】:

  • 是的,我错过了 DragStarting 和 DragItemsStartings 命名的细微差别。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-20
  • 1970-01-01
  • 2022-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多