2009-01-07 75 views
0

我有一个WPF组合框被结合到WPF组合框字体绑定FileFormatException

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> 

出现以下异常。如何清除任何无效字体的Fonts.SystemFontFamilies?

'file:/// C:/ Program Files(x86)/ Common Files/Adob​​e/SING/AssocCache/Generic.otf'文件不符合预期的文件格式规范。

回答

1

好了,下面的示例帮助Sample Font Chooser

下面的代码也排除了非可用在我的处境符号字体:

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