如何将 FontFamily 绑定到 Silverlight 中的自定义字体

本文关键字:自定义 字体 Silverlight FontFamily 绑定 | 更新日期: 2023-09-27 18:31:20

我正在开发一个Silverlight 4应用程序,它将用作图像创建者/编辑器。用户会看到一个空白画布,从中他可以添加图层中的图像和文本(类似于 Photoshop),然后将其全部拼合并保存生成的图像。

当用户添加文本时,他需要能够更改字体,例如Arial,Chiller等。我创建了一个字体选取器,它包含一个组合框,其中填充了表示每种 Silverlight 默认字体的 TextBlocks。

<ComboBox x:Name="fontBox" ItemsSource="{Binding}" Grid.Row="0">
   <ComboBox.ItemTemplate>
      <DataTemplate>
         <TextBlock Text="{Binding=?}" FontFamily="{Binding=?}" />
      </DataTemplate>
   </ComboBox.ItemTemplate>
</ComboBox>

我的问题是我需要使用自定义字体来填充组合框,并且由于我使用的是 MVVM 设计模式,因此这一切都必须在代码中完成。谁能帮我解决这个问题?

如何将 FontFamily 绑定到 Silverlight 中的自定义字体

也许你可以使用转换器

FontFamily=

"{Binding SomeProperty, Converter={StaticResource FontConverter}}"

然后创建一个将返回字体家族的转换器