将 XAML PathGeometry 转换为 WPF PathGeometry
我想要由 LineSegment 组成的 PathGeometry。
所以,我使用第一个代码,但它是错误的。
PathGeometry temp = (PathGeometry)Geometry.Parse(
"<PathGeometry.Figures>" +
"<PathFigure StartPoint=\"193.5,283.5\" IsClosed=\"True\">" +
"<PathFigure.Segments>" +
"<LineSegment Point=\"418.5,283.5\" />" +
"<LineSegment Point=\"418.5,508.5\" />" +
"<LineSegment Point=\"193.5,508.5\" />" +
"<LineSegment Point=\"193.5,283.5\" />" +
"</PathFigure.Segments>" +
"</PathFigure>" +
"</PathGeometry.Figures>");
如果我使用第二个代码,它不是错误,但它不包含 LineSegment。结果将是 PolyLineSegment,但我想要 LineSegment。
PathGeometry temp = (PathGeometry)Geometry.Parse(
"M29,329L30,331L31,334L33,336L34,338L36,341L38,343L39,345L41,348L44,352L46,353L47,355L48,356L49,357L49,357L50,358L50,358L51,357L50,356L51,354L51,350L53,342L54,334L58,320L60,315L61,311L63,308L63,306L64,304L65,303L65,302L66,301L66,301L66,301L66,301L66,301L66,301L66,301");
如何将 XAML PathGeometry 转换为 WPF PathGeometry?
谢谢
I want the PathGeometry that consist of LineSegment.
So, I use this first code but it's error.
PathGeometry temp = (PathGeometry)Geometry.Parse(
"<PathGeometry.Figures>" +
"<PathFigure StartPoint=\"193.5,283.5\" IsClosed=\"True\">" +
"<PathFigure.Segments>" +
"<LineSegment Point=\"418.5,283.5\" />" +
"<LineSegment Point=\"418.5,508.5\" />" +
"<LineSegment Point=\"193.5,508.5\" />" +
"<LineSegment Point=\"193.5,283.5\" />" +
"</PathFigure.Segments>" +
"</PathFigure>" +
"</PathGeometry.Figures>");
If I use this second code, it's not error but it doesn't consist of LineSegment. The result will be PolyLineSegment but I want LineSegment.
PathGeometry temp = (PathGeometry)Geometry.Parse(
"M29,329L30,331L31,334L33,336L34,338L36,341L38,343L39,345L41,348L44,352L46,353L47,355L48,356L49,357L49,357L50,358L50,358L51,357L50,356L51,354L51,350L53,342L54,334L58,320L60,315L61,311L63,308L63,306L64,304L65,303L65,302L66,301L66,301L66,301L66,301L66,301L66,301L66,301");
How do I convert XAML PathGeometry to WPF PathGeometry?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您用于解析 XAML 的代码不正确,您需要使用 XAML 读取器并将结果转换为所需的类型。例如:
如果您使用代码隐藏,您是否有任何理由想要解析 XAML 片段?您可以通过编程方式创建路径,如下所示:
路径由几何体组成,几何体由图形组成,图形由线段组成!
如果您想在代码后面使用简化的路径数据,您可以使用通用值转换器:
http://www.scottlogic.co.uk/blog/colin/2010/07/a-universal-value-converter-for-wpf/
Your code for parsing the XAML is incorrect, you need to use a XAML reader and cast the result to the required type. e.g.:
If you are using code-behind, is there any reason you want to parse a XAML snippet? You can programmatically create a path as follows:
A path is composed of a geometry, which is composed of figures, which are composed of segments!
If you want to use the simplified path data in code behind you could use a universal value converter:
http://www.scottlogic.co.uk/blog/colin/2010/07/a-universal-value-converter-for-wpf/