ManipulationStarted,ManipulationCompleted,ManipulationDelta

一、获取某个元素相对另一元素的相对位置

1、使用TransformToVisual获取某个元素相对于另外一个元素的偏移量。

     例如:要获得rect相对于LayoutRoot的偏移量,就将LayoutRoot作为参数传进去,然后针对0,0这个点做一个transform:

Point translate = this.rect.TransformToVisual(this.LayoutRoot).Transform(new Point(0, 0));

    之后就可以在e.ManipulationOrigin的基础上加上这个偏移量了:

x += translate.X;
y += translate.Y;

     在更高级一点的场合中,你还可以将TransformToVisual的结果转换成一个MatrixTransform,从而获得变换矩阵。

 请参考http://msdn.microsoft.com/en-us/library/system.windows.uielement.transformtovisual(v=VS.95).aspx

posted @ 2013-08-28 10:11  ╰→劉じ尛鶴  阅读(237)  评论(0编辑  收藏  举报