我想開發一個應用程序的字體。在ListView中,我列出了所有已安裝的字體。現在我想顯示用該字體編寫的字體名稱。設置每個ListViewEntry使用不同的字體
InstalledFontCollection installedFontCollection = new InstalledFontCollection();
fontFamilies = installedFontCollection.Families;
int fontCount = fontFamilies.Length;
familyList = new ListViewItem[fontCount];
for (int i = 0; i < fontCount; i++)
{
familyList[i] = new ListViewItem(fontFamilies[i].Name);
}
listView1.Items.AddRange(familyList);
在for循環中,我嘗試用
familyList[i].Font = new Font(fontFamilies[i], 12);
設置字體然而,所有的文字變成空白。
如果我硬編碼值,它工作正常。甚至當我硬編碼基於隨機條件不同的字體,說
if (i % 2 == 0)
familyList[i].Font = new Font(fontFamilies[53], 12);
else
familyList[i].Font = new Font(fontFamilies[12], 12);
列表交替的字體如預期。
這裏有什麼問題?某些字體可能未定義或無法使用,導致整個列表失敗?沒有錯誤被拋出。
謝謝。
你用什麼? WinForms,WPF?我想呢,WinForms, – 2014-11-24 10:36:21
?這是Visual Studio 2013中的WindowsFormsApplications。 – 2014-11-24 11:02:12