Silverlight 2.0 RC Порядок перетаскивания ListBox - PullRequest
4 голосов
/ 09 октября 2008

Я пытаюсь дать возможность перетаскивания ListBox, и я ударился о стену. Он работает, когда я указываю элементы списка в xaml, но он не работает, когда я связываюсь со списком, он больше не работает, потому что элементы больше не относятся к типу списка.

Я нашел этот код http://blog.dobaginski.com/josh/?p=52, который позволяет мне получить базовый ListBoxItem, но я не могу заставить событие перемещения мыши сработать.

Я прошел другие уроки, но не смог найти ни одного, который бы работал с ListBox. Кто-нибудь делал это с ListBox.

События, которые я использую, - SelectedChange, MouseMove и LeftMouseButtonUp (я думаю, что имя верно). Я не использую LeftMouseButtonDown, потому что я не смог его запустить.

Ответы [ 3 ]

1 голос
/ 15 октября 2008

с сегодняшнего дня вы можете загрузить финальную версию Silverlight 2.0 с некоторыми дополнениями, проверьте веб-журнал Скотта

1 голос
/ 15 октября 2008

Я пытался сделать то же самое в WPF, но нашли только много ошибочных реализаций.

Один человек вел меня к блогу Беатрис Коста, и насколько я помню, она одна из тех редких гениев, так что я предлагаю вам прочитать это тоже ... Я знаю, я буду

Блог Беатрис Коста

1 голос
/ 09 октября 2008

Насколько я знаю, вы не можете попасть в контейнер элемента списка при использовании привязки данных. Вы могли бы в бета-версии 1.

Вы также не можете установить обработчик событий мыши в стиле, вы должны использовать шаблон данных, просто чтобы вы знали.

Скорее всего, вам придется использовать событие перемещения мыши из родительского элемента, возможно, из пользовательского элемента управления или основного элемента управления макетом, в котором находится список.

Изменения состояния и анимации должны быть в стиле, хотя, так что ... вы все еще не можете добраться до элемента списка, только элемент внутри него в шаблоне данных.

О, и если перетаскивать, HitTest теперь защищен, так что это сделает падение сложнее.

...