У меня есть список файлов с их именами в списке и их содержимое, сохраненное в таблице 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);
Но это кажется очень неэффективным и неуклюжим, и я пока не нашел хороший способ избавиться от накопленных временных файлов.