我想在代码中生成WPF Path对象。
在XAML中,我可以这样做:
<Path Data="M 100,200 C 100,25 400,350 400,175 H 280">
如何在Code中做同样的事情?
Path path = new Path(); Path.Data = "foo"; //This won't accept a string as path data.
是否有可用的类/方法将带PathData的字符串转换为PathGeometry或类似的字符串?
当然可以通过某种方式解析XAML并转换数据字符串吗?
var path = new Path(); path.Data = Geometry.Parse("M 100,200 C 100,25 400,350 400,175 H 280");
Path.Data的类型为Geometry。使用 Reflector JustDecompile (eff Red Gate) ,我查看了其TypeConverterAttribute的Geometry定义(xaml序列化程序用于将type的值转换string为Geometry)。这使我指向了GeometryConverter。在检查实现时,我看到它用于Geometry.Parse将路径的字符串值转换为Geometry实例。
string
Geometry
Geometry.Parse