/ / DoDragDrop (), bei dem Daten asynch - .net, winforms, winapi, Drag & Drop abgerufen werden

DoDragDrop (), wo Daten asynch erworben werden -. NET, winforms, winapi, Drag & Drop

Meine Anwendung ist ein intelligenter Client, der einen WCF-Dienst verwendet. Ich habe eine ListView, in der Elemente Dateinamen sind. Dateien werden serverseitig gespeichert.

Wenn der Benutzer ein Element aus der Liste zieht, werden die Daten angezeigtnoch nicht clientseitig Anstatt die Daten beim ItemDrag-Ereignis vorab herunterzuladen, möchte ich die Daten nur vom Server herunterladen, wenn das Element abgelegt wird (bei MouseUp unter Windows Explorer).

Gibt es eine Möglichkeit, ein AsyncDataObject (IDataObject) zu implementieren und an Control.DoDragDrop () zu übergeben? Oder kann ich dieses Verhalten auf andere Weise erreichen?

Thaks

Antworten:

2 für die Antwort № 1

Auslösen eines Ereignisses aus dem Drop-Ereignis nach dem Ablegen wird bestätigt, wodurch eine Abfrage ausgelöst wird, die zurückgerufen wird, um die Benutzeroberfläche mit den neuen Daten zu aktualisieren.

Dies erfordert unmittelbar nach dem Ablegen einen Ladeanzeiger, um den aktuellen Bereich ungültig zu machen, in den die Daten fallen.


-1 für die Antwort № 2

Sie ziehen virtuelle Inhalte in den Explorer. Hier ist ein Beispiel in verwaltetem Code. Hier ist ein anderes. Im ersten Beispiel würden Sie ihre GetFileContents durch eine Version ersetzen, die die Daten heruntergeladen hat.