是否可以将所有受 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
.
我想复制具有基于 RenderTransform 的新属性的元素。例如,一个 canvas 上的元素到另一个 canvas.
上的元素的 ScaleTransformprivate 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
.