記事のカテゴリー: C#、.NET9、WPF
アプリのフォントを一括で設定する方法を考えます。
ウィンドウのフォントを設定するとウィンドウ上のコントロールに設定が伝播します。これを利用して、ApplicationのResourcesプロパティでWindowのスタイルを定義して、DynamicResourceを使ってFontFamilyプロパティを設定します。
XAML:
- <Application.Resources>
- <!-- FontFamily 型のリソースを宣言する -->
- <!-- (初期値は SystemFonts.MessageFontFamily) -->
- <x:Static x:Key="ApplicationFontFamily" Member="SystemFonts.MessageFontFamily" />
- <!-- Window のスタイルで DynamicResource を使って FontFamily を設定する -->
- <Style TargetType="Window">
- <Setter Property="FontFamily" Value="{DynamicResource ApplicationFontFamily}" />
- </Style>
- </Application.Resources>
ApplicationのResourcesプロパティで定義したFontFamily型のリソースを置き換えることでアプリのフォントを変更できます。
C#:
- // FontFamily 型のリソースを書き換える
- Application.Current.Resources["ApplicationFontFamily"] = new FontFamily("Meiryo UI");
0 件のコメント:
コメントを投稿