2009-07-07 4 views
3

J'ai une requête sur le glisser-déposer en C# en utilisant .NET.Faites glisser Drop sur le bureau après la création du fichier? (C#)

Mon problème concerne les fichiers distants. J'ai une liste de fichiers distants que l'utilisateur peut faire glisser dans une fenêtre de l'explorateur (bureau, etc). Quand une telle traînée se produit, je veux être en mesure de télécharger le fichier et l'écrire à l'emplacement de dépôt.

La méthode normale des fichiers traînaient:

private void StartDragDrop(string FileToDrag) 
{ 
MyControl.DoDragDrop(new DataObject(DataFormats.FileDrop, FileToDrag), DragDropEffects.Copy); 
} 

... ne répond pas à mes besoins que je ne veux pas les données du fichier pour remplir l'objet glisser-déposer jusqu'à ce que le DROP.

J'ai vu cette fonctionnalité dans de nombreux clients FTP et autres.

Merci d'avance les assistants.

+0

J'ai trouvé le lien ci-dessous, mais il doit y avoir un moyen plus facile de le faire que ... http://www.codeproject.com/KB/dotnet/DataObjectEx.aspx – ThePower

+0

Il n'y a aucun moyen plus simple Le support .net pour le glisser-déposer du shell est limité, donc si vous voulez aller au-delà des limites, vous devez effectuer toutes les opérations d'interopérabilité de bas niveau. – arbiter

+0

Il doit y avoir un moyen de trouver l'emplacement de la goutte, c'est tout ce dont j'ai besoin, juste le chemin de la goutte, alors je pourrais faire le travail moi-même et annuler la goutte de glisser. – ThePower

Répondre

2

Il semble qu'il n'y ait aucune méthode logiquement simple pour faire une telle chose.

Mais il y a un travail autour (avec une quantité substantielle de travail pour une telle fonction de base) qui peut être trouvé à codeproject.

Si quelqu'un trouve une façon ordonnée de le faire, laissez-moi savoir, je serais intrigué.

Questions connexes