プロプログラマ

プログラマーを職業としてます。 Flex,Air,C#,Oracle,HTML+JSの言語ノウハウを中心に情報発信していきます

[WPF] DatePickerのカレンダーを大きくする

DatePickerの標準カレンダーは結構小さめです。
システム作ると必ず一部の人から言われるのが、「文字が小さい」です。
表示する情報量からするとやむを得ないというのが正直なところであり、言われたところでどうしようもない部分なのですが、可能な範囲で対応することになります。

DatePickerそのもののサイズはフォントサイズ指定で変わりますが、レイアウト的に限界があります。
ですが、ポップアップするカレンダーについては、多少大きくても問題ありません。
そもそもカレンダーは初期状態では小さくて、年寄でなくてもクリックするのが難しかったりします。

ということで、カレンダー全体を大きくしてしまいます。
WPFの場合、サイズを拡大するのは簡単にできます。
DatePicker自体に直接指定もできますが、せっかくなのでStyleで指定します。
この例では2倍です。

    <Style TargetType="{x:Type Calendar}">
        <Setter Property="LayoutTransform">
            <Setter.Value>
                <ScaleTransform ScaleX="2" ScaleY="2"/>
            </Setter.Value>
        </Setter>
    </Style>
    <Style TargetType="{x:Type DatePicker}">
        <Setter Property="CalendarStyle">
            <Setter.Value>
                <Style TargetType="{x:Type Calendar}" BasedOn="{StaticResource {x:Type Calendar}}"/>
            </Setter.Value>
        </Setter>
    </Style>

CalendarStyleに対してスタイルを指定することで、DatePickerではなく、Calendarのみが大きくなります。

指定すると、

が、

のようにでっかくなります。
これで押し間違えも少なくなるでしょう。
この大きさなら文句は言わせませんよ。気に入らないならもっとでっかくします。

 

== ランキングに参加しています。ぜひクリックお願いします ==

プログラム ブログランキングへ
にほんブログ村 IT技術ブログへ
にほんブログ村

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください