Проблема не столько в множественном выборе с помощью клавиши Ctrl.Если вы отпустите клавишу Ctrl во время операции перетаскивания, вы увидите, что операция перетаскивания успешно завершена.Это больше связано с отбрасыванием предметов при нажатой клавише Ctrl.Очевидно, это указывает на то, что вы хотите скопировать элементы вместо того, чтобы перемещать их.
Я не знаю какой-либо документации, подтверждающей это, но я нашел следующее в комментарии к документации внутреннегокласс ( Microsoft.Windows.DragOperation , метод GetDragDropEffects):
/// <summary>
/// Returns the allowed effects by analyzing the state of the keys
/// pressed. If the control key is pressed the user is requesting a
/// copy. If copy is available the effect will be only copy, if not
/// available the effect will be None.
/// </summary>
Я добавил свойство AllowedSourceEffects="Copy"
в оба объекта DataGridDragDropTargets, а затем обнаружил, что перетаскиваниеперестал работать дроп функционал вообще.Однако, когда я изменил эти свойства на AllowedSourceEffects="Copy,Move"
, я обнаружил, что перетаскивание снова работает, в том числе, когда я удерживал клавишу Ctrl.Однако даже когда я удерживал клавишу Ctrl, элементы перемещались, а не копировались.