如何在XAML中放置一个unicode角色?

时间:2009-09-02 11:43:29

标签: wpf xaml unicode binding

我正在尝试这样做:

<TextBlock Text="{Binding Path=Text, 
                          Converter={StaticResource stringFormatConverter}, 
                          ConverterParameter='&\u2014{0}'}" />

要获得 - 出现在文本前面。它不起作用。我该怎么办?

5 个答案:

答案 0 :(得分:172)

由于XAML是XML文件格式,因此您可以尝试XML字符转义。因此,您可以改为编写&\u2014而不是编写&#x2014;

答案 1 :(得分:7)

在xaml中,我这样做了:

    <Button Grid.Column="1" Grid.RowSpan="2" Name="start" Margin="5" Click="start_Click">
        <TextBlock Name="test" FontFamily="pack://application:,,,/Y_Yoga;Component/Resources/#FontAwesome">&#xF04B;</TextBlock>
    </Button>

希望有所帮助!

答案 2 :(得分:3)

From Microsoft documentation

  

在Microsoft Visual Studio中创建的标记文件是   自动保存为Unicode UTF-8文件格式,这意味着   大多数特殊字符(例如重音符号)都已正确编码。   但是,有一组常用的特殊字符   处理方式不同这些特殊字符遵循世界范围   Web Consortium(W3C)用于编码的XML标准。

这意味着你可以为你所关心的所有人做zalgo

enter image description here

相关的一些代码:

<Label Grid.Column="0" Grid.Row="3" FontWeight="ExtraBlack">STAGE:M&#x363;&#x36d;&#x363;&#x33e;  V&#x363;&#x365;&#x36d;&#x35b;&#x364;&#x36e;&#x365;&#x368;&#x365;&#x367;&#x33e;</Label>

答案 3 :(得分:0)

将文件另存为UTF-8。在Visual Studio中,可以通过转到“文件”→“高级保存选项”来完成此操作。

答案 4 :(得分:0)

我出于某些其他原因来到了此页面,但这并不包括最简单,最明显的解决方案。

这就是我的工作。

维护具有所有Unicode值的静态类。

 public static class Icons
{
    public const string IconName = "\u2014";
}

然后将其绑定到需要的位置。

<TextBlock Text="{x:Static resources:Icons.IconName}" FontFamily="..."/>

这也可以帮助您进行维护,所有图标都可以在一个位置进行管理。