WPF: изменить порядок содержимого WrapPanel с помощью перетаскивания?
Я ищу способ изменить порядок содержимого (элементов) WPF WrapPanel с помощью перетаскивания. Я просто хочу нажать на элемент и перетащить его в новое положение.
насколько я понимаю, это очень распространенная задача, и мне интересно, что кто-то уже сделал это или имеет представление о том, как реализовать эту функциональность.
Я уже сделал поиск в google, но ничего не нашел. Может быть, это сложнее, чем я ожидал.
2 ответов
Я написал библиотеку, которая может помочь: поведение по умолчанию-разрешить повторный заказ в том же элементе управления:
http://code.google.com/p/gong-wpf-dragdrop/
Ах, я заметил, что вы говорите только об WrapPanel: вам нужно будет использовать ItemsControl с WrapPanel:
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
панель wrap не даст вам функциональность, которую вы ищете, так как она предназначена только для макета. Вместо этого посмотрите на добавление функции перетаскивания в список и измените ItemsPanelTemplate этого списка, чтобы использовать панель обертки.