Используя инструменты Red-Gate, мы обнаружили, что файл System.Windows.DataObject содержит ссылку на объект dragObject (элемент структуры), который висит вокруг от операции с тех пор, как она завершена.Утечка памяти WPF от перетаскивания
Как один «очистить» объект перетаскивания после DragDrop.DoDragDrop? Есть ли способ пропустить нуль через это и пропустить это?
Wow: это действительно прекрасное решение. Краткое объяснение того, почему это работает: DoDragDrop() завершит выполнение только после завершения операции перетаскивания. Поэтому функция, которая выполняет DoDragDrop(), всегда содержит последнюю сильную ссылку на объект данных и будет освобождать ее только после завершения операции перетаскивания. –