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

时间:2012-04-17 15:05:41

标签: c# silverlight data-binding mvvm fonts

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

当用户添加文字时,他需要能够更改字体,例如Arial,Chiller等我创建了一个字体选择器,它由一个填充了TextBlocks的组合框组成,它代表每个Silverlight默认字体。

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

我的问题是我需要使用自定义字体来填充组合框,因为我使用的是MVVM设计模式,所有这些都必须在代码中完成。任何人都可以帮我这个吗?

1 个答案:

答案 0 :(得分:1)

也许你可以使用转换器

FontFamily =“{Binding SomeProperty,Converter = {StaticResource FontConverter}}”

然后创建一个将返回FontFamily的转换器