App.xamlでFontFamilyを設定して、宣言的にそのスタイルを必要に応じて適用できるようにする方法を考えています。私のようなものに適用することができますResourceDictionary
で :私は、何をしたいのかFontFamilyをStaticResourceとして保存するには?
<System:Double x:Key="SmallTextSize">10</System:Double>
のようなものです:
<FontFamily x:Key="MainFont">Wingdings</FontFamily>
しかし、私は仕事に行くことができる唯一のことは、暗黙的なスタイルで、どのターゲットと、使用したいフォントの複数の宣言が必要です。私は最後のスタイルを任意のコントロールのFontFamilyプロパティに適用できるようにする必要があります。
ここで私は現在、来ることができる最も近いです。
<System:String x:Key="MainFont">Wingdings</System:String>
<Style TargetType="UserControl">
<Setter Property="FontFamily" Value="{StaticResource MainFont}"></Setter>
</Style>
それはMainFontはない文字列のfontFamily、ことを期待しているため、この実装では、のようなものでは動作しません:
<TextBlock Text="{Binding}" Margin="0,0,0,4" FontWeight="Normal" FontFamily="{StaticResource MainFont}" FontSize="14.667" />
どのようにすべきです私はこれを扱う?ありがとう!
もっと適切な答えが見つからない場合は、次のような回避策があります:添付された依存関係プロパティを使用して 'FontFamily'を設定してください。 ' 'のようなものが得られます。 –
ありがとうございますが、それは私が進めていることとはまったく反対です。私は非常に大きなSilverlightアプリケーションでスタイルを統合しようとしています。そのレベルでスタイルを適用すると何千もの編集が行われます。 –
私は何かが足りないかもしれませんが、上の例のようにフォントを設定しようとすると、それは 'FontFamily =" {StaticResource MainFont} "'であり、まったく同じ数の編集が必要になります。 –