これは、MS Surface の SDK サンプル ショッピング カートと (一種の) 類似した状況です。
2 つの ScatterViews を持つアプリケーションがあります。1 つ目は、サーフェス ウィンドウ全体 (「サーフェス」) をカバーします。2 つ目は、TagVisualization オブジェクト (「ポッド」) にあります。複数のポッドが使用可能である可能性があります (テーブルで複数のタグがダウンしている場合)。
ScatterViewItem を「ポッド」から「サーフェス」または別の「ポッド」にドラッグできるようにしたいと考えています。ScatterViewItem が ScatterView 親を離れているかどうかを検出するのに問題はありません。また、ScatterViewItem の親を変更しても問題ありません。
ただし、アイテムがドラッグされている ScatterView を検出したいと考えています。SDK サンプルでは、ScatterViews の下にあるビジュアル要素 (この場合は楕円) を使用しています。VisualTreeHelper.HitTest は、接触が楕円上にあるかどうかを判断するために使用されます。その場合、「接続された」ScatterView が見つかります。
これは非常にエレガントなソリューションではないと思います。連絡先が ScatterView の上にあるかどうかを検出するためだけに、そこに視覚要素を入れたくありません。
この種の「ヒットテスト」を達成するためのより良い方法はありますか?
ありがとう、バート