c# - Perform dragdrop implementation after DoDragDrop method is called -


I'm struggling with it for a while

My app has a list view, Populated with file names, which are located on a server.

I am trying to apply drag and drop functionality, so users can drag files from my application to my local computer.

To do this, first I am downloading files in a temporary location, and then calling the DoDragDrop () method of my application.

The problem is that I only want to download the download process after is called the DoDragDrop method.

I have tried every event related to DropDefense (GiveFeedback, ItemDrag, etc ...) but nothing works.

So basically what I want is a The event is, after being raised DoDragDrop

make sure how to do it In .NET, but in regular Win32 programming, the object that implements IDataObj can also implement the Ect interface IAsyncOperation interface as an alternative. IDropTarget can then use that interface to drag-n-drop in the background drag so that the source and target can not be blocked during actual transfer. The only acceptance is that the goal, not the source, determines whether to take advantage of it or not.

The alternative is to use the "optimized move" transfer, where IDAtobica transfers files and IDprotag files directly.

MSDN has details on it:.

Of course, it still means that before you start the drag-n-drop, you have to download the file, there is actually no way to drag-n-drop to set the target And then download later. However, what you can do is IDataObject hold CFSTR_FILEDESCRIPTOR and CFSTR_FILECONTENTS entries (described here), where CFSTR_FILEDESCRIPTOR You used to populate your ListView, and use the CFSTR_FILECONTENTS easter interface, which is implemented instead of its actual download during actual drop operation. At least this way, you're simply downloading files that really want the goal and skip the rest.

With iAsyncOperation from the couple, and this can give you the ultimate effect.


Comments