WPFアプリケーションは、任意のサイズの均一なグリッドで構成されます。グリッドの各セルにはキャンバスが含まれています。各キャンバスは、ドラッグアンドドロップ操作のターゲットです。
別のキャンバスをドラッグしてグリッド内のキャンバスにドロップするときは、ドラッグしたキャンバス(ソース)とターゲットキャンバスの左上隅を揃えて、基本的にソースをターゲットの上に配置します。私が探している動作は、グリッドにスナップする効果です。
現在element.GetValue(Canvas.LeftProperty)
、結果をNaNで使用する場合。問題は、グリッド内のキャンバスのコーナーの位置を決定することですが、ウィンドウ全体を基準にしています。ウィンドウのサイズが変更されると自動的にサイズが変更されるため、グリッドを使用することをお勧めします。
グリッドサイズが変更された場合でも、グリッド内のキャンバスの実際の位置を取得したり、グリッド内の別のキャンバスに位置合わせするキャンバスを指定したりすることはできますか?