У меня есть список файлов с их именами в списке и их содержимом, хранящимся в таблице SQL, и хочу, чтобы пользователь моего приложения мог выбрать один или несколько имен файлов в списке и перетащить их на рабочий стол, давая фактические файлы на рабочем столе. Я не могу найти документацию о том, как это сделать. Может ли кто-нибудь объяснить или указать на объяснение?
Добавлено позже: Я смог выполнить эту работу, обработав событие DragLeave. В нем я создаю файл во временном каталоге с выбранным именем и содержимым, выведенным из SQL Server. Затем я помещаю путь к файлу в объект:
var files = new string[1];
files[0] = "full path to temporary file";
var dob = new DataObject();
dob.SetData(DataFormats.FileDrop, files);
DoDragDrop(dob, DragDropEffects.Copy);
Но это кажется очень неэффективным и неуклюжим, и я еще не понял хороший способ избавиться от накопленных файлов temp.