When you are doing complex things to objects in Silverlight like aninmation of scale and rotation it is sometimes neccesary to be able to translate a point from the object that has been rotated and scaled into it’s parents coordinate system. Luckly the Silverlight 2 dev team has a solution.
The correct way to do this in Silverlight 2 is to use the TransformToVisual method as follows:
Point pointInClientSpace = new Point(someClientX, someClientY);
GeneralTransform transformFromClientToParent = clientControl.TransformToVisual(parentControl);
Point pointInParentSpace = transformFromClientToParent.Transform( pointInClientSpace );
The msdn info on this function can be found here: TransformToVisual