Я решил операцию отмены, используя следующее:
На Control
, выполняющем перетаскивание (в моем случае DataGrid), я добавил обработчик для события QueryContinueDrag
.
private void DataGrid_QueryContinueDrag(object sender,
QueryContinueDragEventArgs e)
{
if (... condition ...)
e.Action = DragAction.Cancel;
}
Условие в вашем случае будет Keyboard.IsKeyDown(Key.Escape)
.