После небольшой переделки я понял, что ничто не может быть перетащено в панель стека вправо, не будучи покрытым другими элементами ... если вы не перетащите очень правильный элемент ..
Что я сделал, чтобы решить эту проблему:
- Создание визуальной подсказки (полупрозрачная форма универсального элемента для повторного представления его во время операции перетаскивания)
- Сделал кий невидимым (width = 0) и оставил его всегда как самый последний элемент дочерней панели стека
- Подписал панель стека на левую кнопку мыши вверх, вниз, на ход
- Эмулируемое перетаскивание с кодом
- После начала перетаскивания я поворачиваю кий на видимый и устанавливаю его трансляционное преобразование в текущие координаты мыши
- Настройка преобразования преобразования при каждом событии перемещения мыши
- При падении я снова скрываю кий и переставляю элементы так, как хочу.
Подчеркнем еще раз - как бы вы ни поступали - вам нужно манипулировать с последним элементом в коллекции StackPanel.Children ....