【发布时间】:2015-03-14 21:41:16
【问题描述】:
我有一个 Windows Phone 8.1 ListView。我想重新排序ListView中的项目。我想在长按上启动重新排序模式,我可以通过点击项目Holding事件并将ListViews ReorderMode更改为Enabled来管理它. ListView 看起来像这样
1.有没有办法“选择”并准备好拖动项目?所以ListView 看起来像这样?我找不到任何属性或任何使其“被选中”的东西。让用户选择他启动重新订购的项目会更好。
2。有没有办法知道用户将项目放到另一个地方(是否重新排序)?我想我可以通过使用 ListView 上的 DragOver 或 DragLeaving 事件来完成它,但是当它们被触发时重新排序模式被禁用,而不是在项目被放到另一个位置时。
3.有没有办法使重新排序模式下的项目之间的差距更小?我找到了 ListViewItemReorderHintThemeOffset 资源,但更改它(直接或编辑 ListViewItem 的样式)不会产生任何变化。
【问题讨论】:
-
至于 2. - 也许你可以尝试利用 ListView.Items.VectorChanged 事件 - 一旦用户重新排序任何项目,该事件被触发两次,一次用于删除,一次用于插入。
标签: c# xaml windows-phone-8.1 win-universal-app