在WPF中获取InkCanvas中元素的X Y坐标

时间:2009-09-21 00:20:01

标签: wpf coordinates inkcanvas

我有一个InkCanvas,它通过C#以编程方式添加了它的子项。它们未设置为InkCanvas.LeftPropertyInkCanvas.TopProperty。我想知道是否有可能获得这些元素的默认X和Y值。目前,如果我检查InkCanvas.LeftPropertyInkCanvas.TopProperty,它将返回NaN,因为它们未设置。这有可能吗?提前感谢您的帮助。

干杯,

尼鲁

2 个答案:

答案 0 :(得分:3)

我认为这可能就是答案:

Vector vector = VisualTreeHelper.GetOffset(element);

它返回一个向量,其元素相对于父元素偏移。可以找到更多信息here

编辑:不要以为这会帮助我做我想做的事情。虽然如果您最初在元素上设置边距,这是一个很好的方法。在我的情况下,我认为我必须明确设置坐标。

答案 1 :(得分:0)

您希望使用Canvas上定义的各种静态方法来获取这些值 - GetLeft()GetTop()等。我相信LeftProperty只是{{1}}的定义附属物本身,而不是获得价值的方式。