是否可以将所有受 UIElement RenderTransform 影响的属性复制到新元素中?

Can all of a UIElement RenderTransform effected properties be copied into a new Element?

我想复制具有基于 RenderTransform 的新属性的元素。例如,一个 canvas 上的元素到另一个 canvas.

上的元素的 ScaleTransform
private void CopyElement(UIElement elem, Canvas src, Canvas dest, Size scale, Vector offset) {
    ScaleTransform resize = new ScaleTransform(scale.Width, scale.Height);
    elem.LayoutTransform = resize;
    UIElement newElem = CopyElement(src, elem); 
    Canvas.SetLeft(newElem, Canvas.GetLeft(elem) * scale.Width + offSet.X);
    Canvas.SetTop(newElem, Canvas.GetTop(elem) * scale.Height + offSet.Y);
    dest.Children.Add(newElem);
}

您根本不需要这样做。

只需设置元素的 LayoutTransform 属性 而不是其 RenderTransform.