【发布时间】:2020-06-10 16:25:19
【问题描述】:
我有一些MenuItems 使用 Unicode 符号作为图标。
在我的 Windows 10 开发 PC 上,它们都可以正常工作。但在 Windows 7 测试虚拟机上,只有其中一些可以。
这个一直有效:
<MenuItem Command="...">
<MenuItem.Header>
<Run FontStyle="Italic">Header Text...</Run>
</MenuItem.Header>
<MenuItem.Icon>
<Span FontSize="15">✎</Span>
</MenuItem.Icon>
</MenuItem>
但是这个在Win7上失败了:
<MenuItem
Header="Up"
Icon="⮝"
Command="..."
/>
相反,它会显示一个矩形来代替预期的符号。
起初我怀疑缺少字体,但正如您在代码中看到的那样,根本没有指定字体系列。
将应用程序放到 Win7 测试虚拟机上是一个复杂的构建过程,因此通过反复试验来解决这个问题很费力。我没有可以重现它的开发环境。
这可能根本不是 Win10 与 Win7 的原因,但到目前为止,这就是我必须继续下去的全部内容。
这是一个 .NET 4.7.2 项目。
我也刚刚注意到Win7上的另一个失败案例:
<Button
Command="..."
>
<TextBlock
FontSize="20"
FontFamily="Arial"
Margin="0,-3,0,0"
>
????
</TextBlock>
</Button>
这个在 Win10 上也可以,但在 Win7 上显示一个矩形代替 ????。
【问题讨论】:
标签: .net wpf xaml unicode .net-4.7.2