在WrapPanel中查找元素的实际位置

时间:2014-05-31 11:00:03

标签: c# wpf wrappanel

我有一个WrapPanel和三个按钮。 WrapPanel中的第三个按钮位于第二行。 我想找到button4真正的psotion。

<WrapPanel Height="100" Width="200">
   <Button Content="Button" Height="23" Name="button2" Width="75" />
   <Button Content="Button" Height="23" Name="button3" Width="75" />
   <Button Content="Button" Height="23" Name="button4" Width="75" />
</WrapPanel>

我使用此代码,但它是0,因为margin是0。

int top = button4.Margin.Top //I want in this case top become 23 but it is 0.

1 个答案:

答案 0 :(得分:1)

要在WrapPanel中找到按钮位置,您应该使用TransformToAncestormsnd

 Point currentPoint = button4.TransformToAncestor(myWrapPanel).Transform(new Point(0, 0));

myWrapPanelWrapPanel