#wpf #canvas #transform
#wpf #canvas #преобразовать
Вопрос:
У меня есть Canvas
с двумя или более объектами. Теперь я помещаю эти объекты в новый, Canvas
помещенный в предыдущий Canvas
. Затем я поворачиваю его.
Теперь я хочу знать, как получить позиции объектов в новом Canvas
, как если бы нового canvas не было.
Ответ №1:
Вы можете использовать следующий метод расширения, чтобы получить местоположение одного UIElement
относительно другого:
public static class ExtensionMethods
{
public static Point GetRelativePosition(this UIElement element, UIElement other)
{
return element.TransformToVisual(other)
.Transform(new Point(0, 0));
}
}