我在WPF堆栈中工作,我希望能够为任何Transform获取MatrixTransform。根据链接here,似乎MatrixTransform不是基类,而是其他Transform类型的兄弟。但是,所有正常的图形变换都应归结为MatrixTransform。这有什么捷径吗?也许像隐藏的强制转换操作符可以将任何转换转换为MatrixTransform?
答案 0 :(得分:7)
TranslateTransform
,MatrixTransform
等基类是抽象类Transform
。
Transform
类公开Value
类型的Matrix
属性。 MatrixTransform
类有一个带Matrix
的构造函数。因此,要获得与MatrixTransform
的现有LayoutTransform
对应的常规FrameworkElement
,您可以使用以下代码:
var transform = new MatrixTransform(element.LayoutTransform.Value);