1. ホーム
  2. wpf

WPFグローバルフォントサイズ

2023-08-10 01:59:21

質問

WPFアプリを作成していますが、uiのすべての要素のフォントサイズを変更できるようにするための最良の方法を知りたいです。リソース辞書を作成し、使用するすべてのコントロールのフォント サイズを設定するスタイルを設定するのですか。

ベストプラクティスは何ですか?

どのように解決するのですか?

私ならこうします。

<Window.Resources>
        <Style TargetType="{x:Type Control}" x:Key="baseStyle">
            <Setter Property="FontSize" Value="100" />
        </Style>
        <Style TargetType="{x:Type Button}" BasedOn="{StaticResource baseStyle}"></Style>
        <Style TargetType="{x:Type Label}" BasedOn="{StaticResource baseStyle}"></Style>
        <Style TargetType="{x:Type TextBox}" BasedOn="{StaticResource baseStyle}"></Style>
        <Style TargetType="{x:Type ListView}" BasedOn="{StaticResource baseStyle}"></Style>
        <!-- ComboBox, RadioButton, CheckBox, etc... -->
    </Window.Resources>

そうすれば、すべてのコントロールを変更したい場合、私は "baseStyle" スタイルを変更するだけでよく、残りはそれを継承することになります。(これがBasedOnプロパティです。継承されたスタイルの中に他のセッターを作成すれば、ベーススタイルを拡張することも可能です)