Mam listę plików z ich nazwiskami w polu listy i ich zawartością przechowywanych w tabeli SQL i chcę, aby użytkownik mojej aplikacji mógł wybrać jedną lub więcej nazw plików w polu listy i przeciągnąć je na pulpit, plonujące rzeczywiste pliki na pulpicie. Nie mogę znaleźć żadnej dokumentacji, jak to zrobić. Czy ktoś może wyjaśnić lub wskazać wyjaśnienie?Plik narzędzia przeciągnij do pulpitu z aplikacji WinForm .net?
Dodano później: Udało mi się wykonać tę pracę poprzez obsługę zdarzenia DragLeave. W nim utworzę plik w katalogu tymczasowym o wybranej nazwie i zawartości wyciągniętej z SQL Server. I następnie umieścić ścieżkę do pliku do obiektu:
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);
Ale to wydaje się bardzo nieefektywne i niezdarny, a ja jeszcze nie zorientowali się, to dobry sposób, aby pozbyć się nagromadzonych plików tymczasowych.
Rozumiem to, ale nie rozumiem, gdzie foo.txt jest tworzone i wypełniane jego zawartością z tabeli SQL. – mlo
Czy można dodać "c: /foo.txt", ale po przeciągnięciu upuść plik z nową nazwą pliku, np. "Nowy foo.txt"? – Nooneelse