在ItemTemplate中使用的字符编码

时间:2013-06-19 22:54:20

标签: c# encoding wpf-4.0

我正在从ListBox创建菜单。我使用FontAwesome创建了一些字体图标。这是ListBox ItemTemplate的一部分。

<TextBlock FontFamily="FontAwesome" VerticalAlignment="Center" HorizontalAlignment="Center" 
                               FontSize="32" Text="{Binding MenuCode}"
                               ToolTip="{Binding Tooltip}" >

问题在于TextBlock的文本。我需要显示符号,而不是菜单代码。因此,例如,如果我直接使用Text="&#xf001;",则会显示音乐图标(对所有项目都是固定的),但是当我使用DataBinding时(每个项目都有不同的符号):Text="{Binding MenuCode}"然后是文本&#xf001;(即菜单代码为字符串)出现(文本,无图标)。我猜问题与编码有关,但无法修复。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

错误的转义序列。 HTML使用'#&amp; x'而C#使用\ u。所以你的“#&amp; xF001”会变成“\ uF001”