在XAML到Text中绑定字体很棒的字符

Dav*_*nay 2 silverlight windows-phone-7 font-awesome

我有一个TextBlock,我试图将文本绑定到一个字体 - 真棒字符用作复选框.我有一个返回字符串的属性,但似乎有些东西将它转换为字符串而不是字符.

这可以工作并绘制一个复选框:

<TextBlock Text="&#xf096;" FontFamily="/Resources/fontawesome-webfont.ttf#FontAwesome" />
Run Code Online (Sandbox Code Playgroud)

这种组合不会:

public class myObject 
{
    public string MyString
    {
        get { return "&#xf096;" }
    }
}

<TextBlock Text{Binding MyString} FontFamily="/Resources/fontawesome-webfont.ttf#FontAwesome" />
Run Code Online (Sandbox Code Playgroud)

相反,它绘制实际的字符串(使用#xf096;等),就像它被转义一样.

任何想法为什么或如何使这返回不带引号的角色?

谢谢!

ice*_*bat 11

看起来你的目标可以使用unicode转义序列来实现:

public class myObject 
{
   public string MyString
   {
      get { return "\uf096"; }
   }
}

<TextBlock Text="{Binding MyString}" FontFamily="../Resources/fontawesome-webfont.ttf#FontAwesome" />
Run Code Online (Sandbox Code Playgroud)

然后即使由Binding提供,也会处理字符串.我在台式机上测试了它,但我认为这应该在手机版上同样有用.