c# .net wpf drag-and-drop explorer

c# - Arrastra y suelta a Desktop/Explorer



.net wpf (1)

DragDrop.DoDragDrop puede hacer esto siempre que lo pase un DataObject apropiado.

Primero copie los archivos en alguna parte. Puede usar System.IO.Path.GetTempPath() si no tiene un lugar mejor.

A continuación, cree una matriz de cadenas que contenga las rutas completas a los archivos y haga lo siguiente:

string[] paths = ...; DragDrop.DoDragDrop(this, new DataObject(DataFormats.FileDrop, paths), DragDropEffects.Copy);

De hecho, es posible hacer esto sin copiar previamente los archivos, pero eso entra en algunas interacciones complicadas de IDataObject, así que, a menos que tus archivos sean potencialmente muy grandes y no estén ya en el sistema de archivos, probaría este método primero.

Siguiendo mi escenario

Obtuve una Aplicación que carga una Estructura de Archivos (Carpetas, Archivos) desde una Base de Datos a un ListView de WPF. Ahora me gustaría tomar un archivo de este ListView, arrastrarlo sobre mi Escritorio (o alguna ventana abierta del explorador) y soltarlo allí. Arrastrar y soltar básico, nada sofisticado. Esto suena como una función "estándar" para una aplicación de Windows, pero Google no lo ayudará.

Entonces, ¿cómo puedo lograr esto? Interops?

Gracias

Editar : Gracias por la solución, todavía tenía que hacer algo de googlear. Aquí está mi solución completa .