任何人都可以告诉我如何获得控件的位置?显然controlName.Margin.Top
不适合我。当我设置一个断点时,我得到0.0的左值,显然它不是,控制在屏幕的一半。
答案 0 :(得分:4)
就像
Point position = child.TransformToVisual(ancestor).Transform(new Point(0,0));
其中祖先是LayoutRoot或Page,而child是相关的控件。
编辑:我刚看了你的评论“我想知道控件在我的画布上的位置”。祖先当然也可以是直接的父母。然而,在这种情况下(直接父级是Canvas),以下可能更好: var top = myCanvas.GetTop(child);