如何在XAML中解析包含大括号和特殊字符的URL?

时间:2015-04-10 19:12:45

标签: c# image xaml url special-characters

我正在处理的界面应该显示来自Adobe Scene7的图像。图像由API检索的非常长的URL生成。如果URL包含大括号,则会出现错误,其中显示“问题解析修饰符”

这就是通常从API传递URL的方式:

http://s7d7.scene7.com/is/image/GTMSportswear/?fmt=png-alpha&bgc=ffffff&hei=750&wid=750&fmt=png-alpha&GTM_Group=1&src={ugc-file:689232465.tif?fmt=tif-alpha}))))

使用fiddler,我可以看到图像实际上正在被解析:

http://s7d7.scene7.com/is/image/GTMSportswear/?fmt=png-alpha&bgc=ffffff&hei=750&wid=750&fmt=png-alpha&GTM_Group=1&src=))))

大括号内部的URL部分被省略并导致“Problem Parsing Modifier”错误,我假设是从Scene7返回的。

从API检索URL并绑定到我的XAML中图像的Source属性时:

    <Image Name="Image1" Source="{Binding URL1,Converter={StaticResource HtmlDecode}, Mode=OneWay}" Grid.Row="1" Grid.Column="0" />

我尝试使用实现HtmlDecode的值转换器,但无济于事。试图用括号替换花括号也不起作用。我发现Scene7对如何克服这个问题的支持很少。 是否有任何其他方法来获取包含大括号的URL在XAML中工作?

1 个答案:

答案 0 :(得分:0)

使用值转换器将源字符串更改为您想要的任何内容(例如escape your curly brackets)。