1

Windows Metro 应用程序:

我需要一种方法来找到组成 ListView 的项目(或单元格)的中心。例如:如果我在填充 ListView 的 stackpanel 中有一个 Image 和 TextBlock,我想要该 stackpanel 的中心或它包含的任何对象或视图。(Windows 8 的新用户)提前致谢..!!

4

1 回答 1

0

下面是一些代码,可以为您提供元素的中心点 - 它采用通用 FrameworkElement,因此您可以传入 ListView、StackPanel 或其他控件。

    /// <summary>
    ///  Gets the center point of any element 
    /// </summary>
    private Point GetCenterPoint(FrameworkElement element)
    {
        GeneralTransform buttonTransform = element.TransformToVisual(null);

        // This gives the point in the upper left-hand corner of the element.  
        Point topLeftPoint = buttonTransform.TransformPoint(new Point());

        // Now get the center point.
        Point centerPoint = new Point();
        centerPoint.X = topLeftPoint.X + element.ActualWidth / 2;
        centerPoint.Y = topLeftPoint.Y + element.ActualHeight / 2;

        return centerPoint;
    }

希望这可以帮助!

于 2012-07-26T14:27:57.790 回答