我正在尝试定义许多样式元素可以引用的字体:
<System:String x:Key="FontFamilyDefault">Arial</System:String>
<System:Int32 x:Key="FontSizeDefault">18</System:Int32>
<SolidColorBrush x:Key="FontColourDefault" Color="Black"/>
我的风格通过以下方式引用它:
<Style TargetType="{x:Type Control}" x:Key="myStyle1">
<Setter Property="FontSize" Value="{StaticResource FontSizeDefault}" />
<Setter Property="FontFamily" Value="{StaticResource FontFamilyDefault}" />
<Setter Property="Foreground" Value="{StaticResource FontColourDefault}" />
</Style>
并且控件引用了myStyle1:
<Style TargetType="TextBox" BasedOn="{StaticResource myStyle1}" />
我得到以下运行时异常: 无法将“System.String”类型的对象转换为“System.Windows.Media.FontFamily”。 如果我注释掉:
<Setter Property="FontFamily" Value="{StaticResource FontFamilyDefault}
然后在大小 conersion 上得到这个异常: Specified cast is not valid。
谁能建议如何将字符串转换为 fontfamily 以及如何在 xaml 中指定字体大小?
提前致谢