我一直在搞乱WPF中的变换选项。如何在现有变换中“添加”新变换?我需要在不可知的不同时间从几个不同的点执行几个不同的缩放,只需将它们添加到现有对象上,而不是仅使用新的缩放重新创建新的变换。我一直在尝试,例如,RenderTransform.Value.ScaleAt(东西),但似乎没有任何事情发生。我在C#。
感谢。
答案 0 :(得分:3)
ScaleAt适用于Matrix结构(即Transform.Value属性),不会反映在实际的Transform上。您可以做的是获取当前Matrix,缩放它,然后将新Matrix作为MatrixTransform应用于元素。像这样:
Transform t = myObject.RenderTransform;
Matrix m = t.Value;
m.ScaleAt(1.1, 1.1, 0, 0);
myObject.RenderTransform = new MatrixTransform(m);