我正在使用VS C#2008 Express。C#WinForms FontDialog無法用一些字體初始化?
我添加了使用標準FontDialog控件將用戶的字體選擇存儲和檢索到我的應用程序的功能。
在我的測試過程中,我注意到某些字體沒有完全初始化對話框 - 名稱沒有出現在「字體」框中,並且示例是空白的。
這些字體的名稱的一部分出現在對話框的「字體樣式」列表中:「Arial Black」,「Segoe UI Light」,「Segoe UI Semibold」等等(有趣的是, Arial Narrow「按預期工作。)
無論我在代碼中初始化對話框的字體,還是在IDE中將FontDialog控件的屬性設置爲上述其中一個問題字體,我都會看到同樣的問題。
這是很容易通過只創建一個簡單的形式,添加一個按鈕啓動了FontDialog類控件,它的字體屬性設置爲「宋體黑」大小設置爲16
任何方式來解決這個重現?
添加的信息: 此問題在Windows 7 64位系統上顯示。在Vista和XP上,Arial Black和Arial Narrow被列爲單獨的字體,而不僅僅是帶有Black和Narrow樣式的Arial。因此,看起來微軟正在做一些與Win7中的常見字體對話不同的東西。
您可以在這裏看到問題的圖像:[鏈接](http://i.imgur.com/y7cGf。png) – 2011-04-21 19:31:27
我發現在搜索中很少提及這個問題,但是我確實發現了一個提供了一點洞察力(但沒有解決方案)的方法:[link](http://www.vbmonster.com/Uwe/Forum。 aspx/vb/34616/Combining-fonts-in-same-font-family) – 2011-04-22 18:45:35
我用Delphi應用程序重現了這個問題,所以很明顯是Windows 7的常見字體對話框問題。我提交了關於Microsoft Connect的錯誤報告。如果有任何問題,請回到這裏。 – 2011-04-23 19:42:17