アプリのフォントを一括で変更する(C# WP)

C#

アプリを作っていて後からまとめてフォントを変更したくなることってよくあります。
UIのサイズに影響するので、本来なら最初に決めておくべきです。

また個人的にはフォントを指定しない方法もやめた方が良いと思っています。
フォントを指定しない場合、システム標準のフォントが使われるわけですが、windows 10なのかwindows 7なのか、環境によって見た目が変わってしまい思わぬ修正が必要になるかもしれません。

<Window Style="{StaticResource WindowFont}">
<Style x:Key="WindowFont" TargetType="Window">
    <Setter Property="FontFamily" Value="Yu Gothic" />
    <Setter Property="FontWeight" Value="Medium"/>
</Style>

方法としては、WindowにStyleを設定します。
そしてStyleをWindow.ResourcesやApplication.Resources、Dictionaryなど参照可能な場所に設置すればOK.
分かっていれば簡単ですが、知らないと悩むものです。

私はコントロール1つ1つに対して地道にFontを設定しようとしてました。
小さなアプリなら何とかなるんですがメンドクサイので上記の方法で一括で設定しましょう。

Windowsで一般的なFont-Familyは以下のものくらいかな。
「UI」がついてる奴は幅が詰まっているので同じスペースでも沢山の文字が表示できます。ただし、個人的には読みにくいので好きじゃない。
古いOSだと使えないけど、私はMeiryoかYu Gothic使うかな。

  • Yu Gothic
  • Meiryo
  • Meiryo UI
  • MS UI Gothic
  • MS PGothic
  • MS Gothic
  • MS PMincho
  • MS Mincho

コメント