Windows窗体控件- Wingding字体无法更改

4
我有一个与Windows窗体C#项目相关的Visual Studio 2013项目,我之前添加了一个使用Wingdings 3字体的按钮-它可以正常工作。我随后创建了一个新解决方案并尝试了相同的操作,但每当我将Wingdings作为任何类型的Windows窗体控件的字体名称时,它总是默认为Form Designer中的Microsoft Sans Serif字体。对于其他字体,设计器会捕捉到更改。我还注意到在我的Visual Studio 2008环境中也出现了同样的问题。
我可能无意中更改了禁用某些类型字体的环境设置吗?

1
请检查字体文件夹,确保 Wingdings 字体存在于其中。 - Usman Waheed
字体存在于C:\Windows\Fonts文件夹中,它也可以在Microsoft Word等软件中使用。 - user2879224
5个回答

9
在Visual Studio中,单击控件并在属性部分展开字体部分。 将字体更改为Wingdings,并将GdiCharSet值从0更改为2。 然后,Wingdings应该可以使用了。
我正在使用Visual Studio 2015。 希望您的版本也具有相同的选项。

这解决了我在 MSDN 的匹配游戏教程中遇到的问题 - 谢谢! - Charles Hooper
GdiCharSet在哪里,我找不到,请? - Ziad Adnan
@ZiadAdnan,当你展开字体部分时,它应该是列出的选项之一。 - BoltBait

1

在StackOverflow上进行了一些研究后,我想到了这个Unicode解决方案:

Unicode替代方案


谢谢,我会尝试这个方法来推进我的开发,但我仍然很好奇为什么这突然对我失效了。这是一个Windows窗体应用程序,所以我不必担心非标准字体在某些Web浏览器中引起的问题。 - user2879224
谢谢Usman,我只是将字体名称设置为Lucida Sans Unicode,然后在我的窗体加载事件中添加了buttonRefresh.Text = "\u21BB";。这给了我我想要的刷新符号。 - user2879224

1

我遇到了与标签和 Wingdings 2 相关的问题。在控件属性中将 UseCompatibleTextRendering 设置为 True 对我有用。


0

将gdicharset设置为1(默认值),并固定不变。不要将UseCompatibleTextRendering设置为true,保持其为false。


0

这是一个 Windows Forms 应用程序,因此对于像 Wingdings 这样的非标准字体,我仍应该可以正常使用。 - user2879224

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接