2015-09-04 4 views
1

У меня есть приложение WFP с деревом, где я могу перетаскивать объекты вокруг.Перетаскивание из WPF в разные объекты

DragDrop.DoDragDrop(dragSource, new DataObject(typeof(IFileObject), ((FilePresenter)dragSource.DataContext).FileObject), DragDropEffects.Move | DragDropEffects.Copy); 

Каждый объект дерева также представляет файл на моем жестком диске. Я хотел бы также перетащить этот объект из моего приложения WPF в проводник (для создания копии) или, возможно, в Outlook для создания вложения.

Я предполагаю (возможно, ошибочно), что он зависит от цели, какого типа DataObject я должен прикрепить, но во время запуска перетаскивания я не вижу, где пользователь будет бросать DataObject.

Я знаю, что другие приложения могут создавать различные виды капель. Когда я перетаскиваю электронную почту в Outlook, например, могу переместить ее в другую папку. Перетаскивание его в проводник создаст файл msg. Перетаскивая его в текстовый редактор, вставьте тему письма в виде текста.

Как я должен инициализировать DragDrop.DoDragDrop(...) перетащить & падения внутри моего приложения, используя свои внутренние объекты, так и вне моего приложения, чтобы обеспечить имя файла?

Это не дубликат Can we drop a file in windows explorer from WPF window? Мой вопрос заключается в том, чтобы поддержать ОБА внутреннее и внешнее сопротивление и падение (если вообще возможно).

+0

Возможный дубликат [Можем ли мы удалить файл в Windows Explorer из окна WPF?] (Http://stackoverflow.com/questions/3165874/can-we-drop-a-file-in-windows-explorer-from -wpf-window) и http://stackoverflow.com/questions/5662509/drag-and-drop-files-into-wpf – netaholic

+0

@netaholic: Пожалуйста, прочтите мой вопрос еще раз. Первый возможный дубликат не нацелен на поддержку перетаскивания внутри и снаружи. Второй вопрос - о том, как сбрасывать в WPF, чего я не спрашивал. – flayn

ответ

1

Вы можете найти ответ на это сообщение: c# Drag and Drop from my custom app to notepad

Чтобы исследовать правильный формат, может быть, это помогает сбросить некоторые данные из проводника в приложение и попытаться построить данные соответственно.

+0

Спасибо, что указали правильный дубликат (ответ там решил мою проблему). Я закрою этот вопрос. – flayn

Смежные вопросы