当用户触摸它时,我需要使用拖动来更改 WrapPanel(或具有水平方向的堆栈面板)中项目的位置。
我尝试了 MouseDragElementBehavior,但它仅更改当前项目的位置,而不更改其他项目的位置。
我看到了这篇文章,但它与垂直方向的 listBox 一起使用。那么是否存在任何方法呢?
当用户触摸它时,我需要使用拖动来更改 WrapPanel(或具有水平方向的堆栈面板)中项目的位置。
我尝试了 MouseDragElementBehavior,但它仅更改当前项目的位置,而不更改其他项目的位置。
我看到了这篇文章,但它与垂直方向的 listBox 一起使用。那么是否存在任何方法呢?
WrapPanel 不是 Drag&Drop 的完美面板,因为它没有顺序的概念。事实上,项目是根据数据源中的顺序排序的。
使用您的示例,您可以像这样简单地更改 ItemsPanel:
<rlb:ReorderListBox
...
<rlb:ReorderListBox.ItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel ItemWidth="100" ItemHeight="50"/>
</ItemsPanelTemplate>
</rlb:ReorderListBox.ItemsPanel>
...