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;(即菜单代码为字符串)出现(作为文本,没有图标)。我猜问题与编码有关,但无法解决。任何想法?

4

1 回答 1

1

错误的转义顺序。HTML 使用 '#&x' 而 C# 使用 \u。所以你的 "#&xF001" 会变成 "\uF001"

于 2013-06-19T23:30:58.907 回答