【问题标题】:Find control position on canvas在画布上查找控制位置
【发布时间】:2010-07-22 20:44:04
【问题描述】:

我有一个 Canvas,其中包含几个 Textblocks,我需要找到在 XAML 文档中分配的左上角点和左上角点。如何获得这两个属性?

当我遍历 Canvas 上的框架元素时,我似乎无法找到列出的属性。

【问题讨论】:

    标签: wpf canvas frameworkelement


    【解决方案1】:

    这里有一些如何获取值的示例:

    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 了解更多信息

    【讨论】:

    • 这实际上应该是双顶 = Canvas.GetTop(fe);
    • Uups,在疲倦之前更好地测试:) 感谢您的信息和接受。已更改示例。为您的问题 +1。
    【解决方案2】:

    优雅的解决方案

    foreach (FrameworkElement fe in Canvas.Children)
             Thickness margin = fe.Margin;
    
    MessageBox.Show("Left: " + margin.Left + "Top: " + margin.Top);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多