Используя функции drag'n'drop в Silverlight 4 Toolkit, у меня есть Listbox с включенным перетаскиванием, где каждый ListboxItem можно перетаскивать / переупорядочивать вверх и вниз.
Каждый ListboxItem содержит несколько элементов управления (TextBlocks, TextBoxes и Buttons), и моя проблема в том, что, когда я нажимаю кнопки внутри ListboxItem, я иногда инициирую событие перетаскивания, а не просто событие click для этого элемента управления.
Одним из решений было бы обработать событие ItemDragStarting и определить, что было нажато для запуска события - и отменить событие, если оно вызывается кнопкой.
Однако я не могу понять, как определить, на что я нажал. Отправитель события и e.DragSource имеют тип ListBoxDragDropTarget, независимо от того, инициирую ли я перетаскивание с кнопки или сам ListboxItem.
Буду признателен за любую помощь - решение моей проблемы или альтернативные способы делать то, что мне нужно!