0
我在UserControl
內部有一個Canvas
,可以平移。我希望能夠知道UserControl相對於Canvas左上角的左上角座標是什麼,每次用戶平移畫布時,都可以使用該信息更新另一個用戶控件。在平移畫布上獲取座標
謝謝!
我在UserControl
內部有一個Canvas
,可以平移。我希望能夠知道UserControl相對於Canvas左上角的左上角座標是什麼,每次用戶平移畫布時,都可以使用該信息更新另一個用戶控件。在平移畫布上獲取座標
謝謝!
我相信你可以通過使用TransformToAncestor(...)
方法實現你想要的。這會給你一個你可以用來獲取偏移量的變換。據我瞭解,如果您檢索從Canvas
到UserControl
的轉換,然後將其應用於(0,0)的位置,那麼您應該得到您的偏移量。
因此,代碼應該是這個樣子:
GeneralTransform transform = canvas.TransformToAncestor(this);
Point offset = transform.Transform(new Point(0, 0));
哪裏canvas
是您Canvas
控制和this
是你UserControl
。
有關更多信息,請參閱鏈接的MSDN文檔。
太好了,那就是我想要的。謝謝斯萊德! –
你的意思是你想在'UserControl'中的'Canvas'控件的偏移量? –
是的,那正是我需要的 –