Я реализую решение Drag Drop, упомянутое здесь:
http://bea.stollnitz.com/blog/?p=53
У меня есть несколько ListBox
es + с WrapPanel
и пунктами. я должен иметь возможность перетаскивать элементы из любой коробки в любую другую.
Когда я перетаскиваю предмет и перемещаю его в другое поле, появляется сообщение об ошибке:
Невозможно получить доступ к украшателям на элементе, который не имеет украшателей.
в этой строке:
if (this.adornerLayer != null)
{
this.adornerLayer.Update(this.AdornedElement);
}
Я пытался увидеть значение AdornedElement, я увидел, что оно имеет это значение:
ListBoxItem : DisconnectedItem
. Я увидел содержимое ListBoxItem
и, похоже, он также отключил элемент.
Проблема также возникает, если я перемещаю свои элементы в том же списке. Мой список использует wrapPanel как ItemsPanelTemplate
.
иерархическое дерево похоже на список списков:
1 Список:
UserControl
бордюр
сетка
сетка
бордюр
бордюр
бордюр
ScrollViewer
ListBox
ItemsPanel
Другие 3 списка:
UserControl
бордюр
сетка
сетка
сетка
TabControl
TabItem
сетка
бордюр
бордюр
бордюр
ScrollViewer
ListBox
ItemsPanel
Кто-нибудь, кто сталкивался с этой проблемой или может помочь мне, что идет не так?