在画布上找到控制位置

时间:2010-07-22 20:44:05

标签: wpf canvas frameworkelement

我有一个包含几个文本块的画布,我需要找到我在xaml中分配的顶部左角点。我怎样才能获得这两个属性?当我遍历画布上的框架元素时,我似乎找不到列出的属性。

2 个答案:

答案 0 :(得分:16)

以下是一些如何获取值的示例:

foreach(FrameworkElement fe in canvas.Children){

   // example 0
   double top=(double)fe.GetValue(Canvas.TopProperty);
   double left=(double)fe.GetValue(Canvas.LeftProperty);

   // example 1
   double top1=Canvas.GetTop(fe);
   double left1=Canvas.GetLeft(fe);

}

http://msdn.microsoft.com/en-us/library/ms749011.aspxhttp://msdn.microsoft.com/en-us/library/system.windows.controls.canvas.top.aspx 了解更多信息

答案 1 :(得分:0)

优雅的解决方案

foreach (FrameworkElement fe in Canvas.Children)
         Thickness margin = fe.Margin;

MessageBox.Show("Left: " + margin.Left + "Top: " + margin.Top);