私は、四角形のItemsControlで構成されるユーザコントロールを持っているアプリケーションを持っています。 チェス盤のように考えてください。ItemsControlをメトロでドラッグ&ドロップする(C#/ XAML)
私のItemTemplateはボーダーで構成されているため、GridViewまたはListViewのようにドラッグ&ドロップのネイティブサポートがありません。私はGridViewとListViewの両方を私の四角形の前に使ってみましたが、GUIがあまりにも低速になりましたので、私はそれをもっと速くする簡単な境界に切り替えました。
操作イベントに接続することで、私の境界線とその内容(少なくともGUIに関しては)のドラッグ動作が得られました。 しかし、正方形(境界線)を別の四角形にドラッグしようとすると、ドロップイベントが発生するようには見えません。私は目標の広場がどれであるか知る必要があります。
私は自分のドラッグをしているので、私は理解しています&私はボーダーのドロップイベントにフックするために何かをする必要がありますか?
ボーダーイベントPointerEntered、PointerMovedなどを購読しようとしましたが、ポインターがどの四角形で終わっているかを知ることができました。ボタンが離されると、ターゲットの四角形がわかります。これは2つの方向(右と下)でしか動作しないように見えますが、Pointerイベントは左または上に移動したときには起きないようです。アイテム(四角形)に異なるZIndexがあり、これがイベントの発生に影響する可能性があると私は読んでいます。
私はこれで何時間も苦労し、本当に助けに感謝します。
DragEnter/DragOver/DragLeaveイベントとDropイベントを調べましたか? –