如何在 XAML 中加入 Unicode字符?

我正在努力:

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

在文本前面显示一个 & mash; 。没用的。我应该在这里做什么?

83033 次浏览

因为 XAML 是一种 XML 文件格式,所以您可以尝试 XML 字符转义。所以你可以写 &#x2014;而不是写 &\u2014

在 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>

希望能帮上忙!

来自 Microsoft 文档 :

在 MicrosoftVisualStudio 中创建的标记文件如下 自动保存为 Unicode UTF-8文件格式,这意味着 most special characters, such as accent marks, are encoded correctly. 但是,有一组常用的特殊字符是 以不同的方式处理。这些特殊字符遵循世界范围 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>

将文件保存为 UTF-8。在 Visual Studio 中,可以通过“文件”→“高级保存选项”来实现这一点。

我来到这个页面是为了其他一些原因,但这并不包括最简单和最明显的解决方案。

这就是我的工作。

使用所有 Unicode 值维护静态类。

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

然后把它绑在任何你需要的地方。

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

这也有助于您的维护,所有的图标将在一个地方管理。

The UTF-32 syntax in WPF/XAML is like so:   &#x000F1B0A;

<TextBlock Text="foo &#x000F1B0A; bar"
FontFamily="Material Design Icons" />


enter image description here

此示例使用 材质设计图标桌面字体(字形转储 给你)