我正在尝试在我的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;
}
UI工作得很好。我可以通过鼠标单击拖动和重新排序并拖动或触摸并拖动手机。但是,我无法在后面的代码中触发任何拖放事件。我试过了:掉落; DropCompleted; DragItemsCompleted。没有人会开枪。我已经尝试了我能想到的一切。
我在List_ItemClick之后的代码中的其他事件工作正常。
任何人都知道我错过了什么?
答案 0 :(得分:1)
我试过了:掉落; DropCompleted; DragItemsCompleted。没有人会开枪。
经过测试,Drop event和DragItemsCompleted event会受到攻击。当您使用这些活动时,您需要为AllowDrop="True"
启用CanDragItems="True"
和ListView
。
同样使用其他控件测试DropCompleted event,此事件暂时不会被触发。
但是这个问题不会影响Drop和Drag实现,你可以参考官方Drag and drop sample,看看如何使它们在这个样本中工作。