【WPF/XAML】チェックボックスのデザイン変更

公開日: : 最終更新日:2015/10/20 Blog, Microsoft , , , ,

<Window x:Class="Sample"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Sample" Height="110" Width="300">
    <Window.Resources>
        <Style x:Key="SampleCheckStyle" TargetType="CheckBox">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type CheckBox}">
                        <Border x:Name="Border" Margin="1" BorderThickness="1" BorderBrush="LightGray" Background="White" Padding="2.0">
                            <TextBlock x:Name="TxtContent"
                                       HorizontalAlignment="Center"
                                       Text="{TemplateBinding Content}"
                                       Foreground="Gray"
                                       FontSize="{TemplateBinding FontSize}"
                                       />
                        </Border>
                        <ControlTemplate.Triggers>
                            <Trigger Property="CheckBox.IsChecked" Value="true">
                                <Setter TargetName="Border" Property="Background" Value="Blue" />
                                <Setter TargetName="TxtContent" Property="Foreground" Value="White" />
                            </Trigger>
                        </ControlTemplate.Triggers>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </Window.Resources>
    <Grid>
        <Label Content="Normal" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top"/>
        <Label Content="Style" HorizontalAlignment="Left" Margin="10,41,0,0" VerticalAlignment="Top"/>
        <CheckBox Content="CheckBox" HorizontalAlignment="Left" Margin="85,15,0,0" VerticalAlignment="Top"/>
        <CheckBox Content="CheckBox" Style="{StaticResource SampleCheckStyle}" IsChecked="True" HorizontalAlignment="Left" Margin="85,46,0,0" VerticalAlignment="Top"/>
        <CheckBox Content="CheckBox" Style="{StaticResource SampleCheckStyle}" IsChecked="False" HorizontalAlignment="Left" Margin="173,46,0,0" VerticalAlignment="Top"/>
    </Grid>
</Window>

関連記事

UWPでユニットテスト

ユニバーサルWindowsのアプリケーションプロジェクトおよびクラスライブラリプロジェクトのユニット

記事を読む

IntelliTestはどこまでカバーしてくれるのか

私はレガシーな開発環境・案件が多かったのですが、 この頃、ユニットテストを利用する機会が増えてきま

記事を読む

VisualStudio2015でiOSアプリケーション開発

こんにちは。 Windows10にアップグレードしました。 VisualStudioも201

記事を読む

no image

SmallBasicで拡張ライブラリを使用する

こんにちは。 teratailにて以下の質問に遭遇しまして。 small basic の 拡

記事を読む

no image

【UWP】矢印キーでのフォーカス移動

FocusManagerで上下左右のフォーカス遷移が出来るので、その仕組みを利用してやるビヘイビアを

記事を読む

Visual Studio Team Services ダッシュボードを自動更新する

Visual Studio Team Services のダッシュボードでプロジェクトや運用状況のサ

記事を読む

no image

Xamarin.UITest, Xamarin Test Cloud にて iPhone 6 Plus, 6S Plus, 7 Plus などで app.Tap が効かない

動作しないというか、app.Tapがどうしても反応しない。 app.ScreenShotなどは動作す

記事を読む

no image

Xamarin.Forms で Opacityを設定したGridの表示・非表示を切り替えると、Androidで例外が発生する(Xamarin.Forms 2.3.3.193)

Xamarin 2.3.3.163 あたりから発生するようになったバグ情報があり 実行環境は 2.3

記事を読む

no image

BOT向け自然言語処理サービスまとめ

自然言語処理 自然言語処理(しぜんげんごしょり、英語: natural language p

記事を読む

no image

Xamarin.Android フルスクリーン

自分用メモです。

記事を読む

Message

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

PAGE TOP ↑