为什么这个Xaml路径会导致Silverlight崩溃?

5

对于任何知道答案的人,这是快速易懂的提示:

下面的Xaml路径在WPF中运行良好,但在Silverlight中崩溃。我可以在Kaxaml中验证这种行为。

路径代码如下:

<Path Fill="#FFEDEDED" StrokeThickness="1" Stroke="#FFA3A3A3" Opacity="0.7" 
                VerticalAlignment="Center" HorizontalAlignment="Center" >
    <Path.Data>
        <PathGeometry Figures="m 1 2 l 4.0525 5.2361 l 4.0527 -5.2361 z "/>
    </Path.Data>
</Path>

这个异常是脚本错误。

在Silverlight应用程序中未处理的错误。无法从文本“m 1 2 l 4.0525 5.2361 l 4.0527 -5.2361 z”创建System.Windows.Media.PathFigureCollection。

它应该画出一个三角形,如下所示:

enter image description here

有什么想法吗?

1个回答

10

与WPF不同,Silverlight不支持将字符串转换为图形。


我在 Expression Blend 中得到了以下的下划线/悬停错误信息:

enter image description here


通过 Blend 创建 Silverlight 的等价三角形如下:

<Path Fill="#FFEDEDED" StrokeThickness="1" Stroke="#FFA3A3A3" Opacity="0.7" 
                VerticalAlignment="Center" HorizontalAlignment="Center"
                Data="m 1 2 l 4.0525 5.2361 l 4.0527 -5.2361 z" />

@GoneCoding 如果PathGeometry中存在FillRule怎么办?就像这样 <PathGeometry Figures="M234.7 811l27 -27.2L288.9 811l-27.2 27.4L234.7 811Z" FillRule="NonZero"/> - NotAgain

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接