に がありScatterViewItem、Scatterviewその操作は私が処理していません。またRichTextBox、 ScatterView には、プロパティ がありますAllowDrop = True。
デフォルトでは、RichTextBox のDragEnterイベントは、ScatterViewItem がそこにドラッグされるたびに発生しますが、これは正しいことです。ここで DragDropEffect を確認したところ、DragDropEffect.Move. その後Drop、イベントは適切に発生します。
DragEnter でDragDropEffect を から に変更しましMoveたCopyが、Drop イベントが発生しなくなりました。DragDropEffect をもう一度チェックしたDragOverところ、どういうわけか になりましNoneた。DragOver で (再度) に設定しようとしましCopyたが、毎回None、DragOver の次のトリガーでそれ自体になります。
Drop イベントが発生するのは、DragDropEffect がAllまたはに設定されている場合のみMoveです。DragDropEffect.Copyこれを変更して Drop イベントを発生させるにはどうすればよいですか? e.Handled = trueDragDropEffect.Copyに設定した後に設定しました。
編集: 申し訳ありませんが、svi のドラッグ アンド ドロップを少し操作しました。ScatterView のOnManipulationStartedで、svi を取得して を呼び出しsvi.BeginDragDrop(svi.DataContext)ます。sviに対して行ったのはこれだけです。