wpf combobox font fileformatexception
-
03-07-2019 - |
سؤال
لديّ wpf combobox ملزمة
Me.fontComboFast.ItemsSource = Fonts.SystemFontFamilies
<ComboBox x:Name="fontComboFast">
<ComboBox.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel />
</ItemsPanelTemplate>
</ComboBox.ItemsPanel>
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" FontFamily="{Binding}" FontSize="15" Height="20"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
يحدث الاستثناء التالي. كيف ستكون أفضل طريقة لمسح الخطوط. systemfontfamilies من أي خطوط غير صالحة؟
"ملف: /// c:/ملفات البرامج (x86)/ملفات مشتركة/ملف Adobe/Sing/Assocache/generic.otf" لا يتوافق مع مواصفات تنسيق الملف المتوقع.
المحلول
حسنًا ، ساعدت العينة التالية عينة الخط المختار
يستبعد الرمز التالي أيضًا خطوط الرموز التي لا يمكن استخدامها في وضعي:
Friend Function IsSymbolFont(ByVal FontFamily As FontFamily) As Boolean
For Each typeface As Typeface In FontFamily.GetTypefaces()
Dim Face As New GlyphTypeface
Try
If typeface.TryGetGlyphTypeface(Face) Then
Return Face.Symbol
End If
Catch e As Exception
Return True
End Try
Next
Return False
End Function
لا تنتمي إلى StackOverflow