2012-07-30 43 views
5

私は理由はわかりませんが、HwndHostのドラッグドロップイベントは動作していないようです(実際にはイベントはまったく動作していないようです)。私はHwndHostに行くWindowsのメッセージにフックすることができますが、私は何かを見つけることができないようです。WPF HwndHostドラッグ&ドロップ

私は、ツリービューからXNAをホストしているHwndHostにノードをドラッグできるようにしようとしています。私はHwndHostでAllowDropをtrueに設定しましたが、何もしないようです。 HwndHostをドラッグ&ドロップ操作のターゲットにする方法を知っている人はいますか?

ありがとうございます!

+0

私はあなたがドラッグを呼び出すと、あなたのviewmodelのイベントをドロップすることができますexpression.interactivity DLLを取得になります。そのwpfのドラッグ&ドロップを実装する簡単な方法の一つは、wpfドラッグアンドドロップのためのGoogleの式のインタラクティブ機能です。これが助けて欲しいと思っています:) – TMan

+0

ええ、私は同じ問題があります。私はすでにWpfのAttachedEventsに基づいた完全なアーキテクチャを持っており、私はHwndHost派生クラスに同じアーキテクチャを再利用する必要があります。私はすでにドラッグ&ドロップのクラス(Windowsのドラッグアンドドロップインフラストラクチャを操作するためのC++/cliのすべてのOLEドラッグ&ドロップクラスを実装しましたが、内部DragEventArgsコンストラクタのためWPFにイベントを発生させることはできません。 – nemenos

+1

さて、私は超ハックの回避策を見つけました。 HwndHostをDockPanelに子孫化し、DockPanelでAllowDropを設定すると、HwndHostの代わりにイベントに応答できます。しかし、DockPanelには背景が必要です。他のフレーム/コントロールで試してみましたが、DockPanelだけが動作するように見えました。 – Trevor

答えて

0

この動作は、デバッガで実行している場合のみですか?

管理者としてVisual Studioを実行していますか?

私は最近この問題に遭遇しました。デバッグせずに試してみてください。もしうまくいくなら、アプリケーションを実行してドラッグアンドドロップコードをデバッグする必要があります。

これは、Windowsのセキュリティ機能です:/

関連する問題