我在WPF项目中有按钮,其中包含Segoe UI符号作为其内容。当我在XAML中直接设置符号或在C#中定义符号并在XAML中绑定它时,这是有效的。当我从数据库中获取符号并将其绑定到XAML中时,我总是得到显式值而不是符号:
<!-- Directly in XAML: works -->
<TextBlock Text="" FontFamily="Segoe UI Symbol"></TextBlock>
<!-- Define in C# (Icon = "\uE10F") and bind in XAML: works -->
<TextBlock Text="{Binding Icon}" FontFamily="Segoe UI Symbol"></TextBlock>
<!-- Getting any of these values from the database: doesn't work

&#xE10F;
\uE10F
\\uE10F
-->
这是一个数据库(Sybase)问题还是有办法在XAML中解决这个问题?
答案 0 :(得分:0)
我通过使用
转换ViewModel中的图标来修复此问题icon.Icon = System.Text.RegularExpressions.Regex.Unescape(icon.Icon);
这会将图标(存储为数据库中的字符串)转换为Unicode字符。