Перетаскивание элементов в ListBox/LongListSelector в приложении WinPhone Silverlight

Многие приложения для Windows Phone позволяют изменять порядок элементов в их списках, перетаскивая их. Вот пример из одной из них, Nokia App Folder:

Вы можете видеть маленький значок перетаскивания рядом с каждым элементом, который можно использовать для изменения порядка элементов.

Мне нужно добавить эту функцию изменения порядка перетаскивания в некоторые списки в моих приложениях WP8 Silverlight. Можете ли вы предложить какое-либо представление о том, как это можно сделать для таких стандартных элементов управления списками, как ListBox или LongListSelector? Ссылка на хорошую статью в Интернете также приемлема.

1 ответ

Решение

ReorderListBox

Одна из первых реализаций, которые я увидел, была в блогах MSDN пару лет назад Джейсоном Гиншеро...

WP7 ReorderListBox

Хотя это было изначально для WP7 Listbox, должно быть возможно изменить и использовать его для WP8 LongListSelector, который заменяет ListBox, Как упоминается в статье, исходный код находится в CodePlex или доступен в виде готового пакета NuGet.


Перетащите Порядок

У Колина Эберхардта также есть фантастическая статья о переупорядочении предметов в списке...

Управляемое жестами приложение для работы с Windows Phone, часть вторая - изменение порядка перетаскивания

Этот подход не использует Listbox или же LonglistSelector но это еще одна отличная ссылка.


Коммерческий вариант

Если у вас есть доступ к элементам управления Telerik Windows Phone, их RadDataBoundListBox имеет встроенную функцию повторного заказа, хотя ее реализация немного отличается от двух упомянутых выше.

Другие вопросы по тегам