【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>

関連記事

no image

UWPとAzure Web AppsでOData

超メモ。走り書き。 Azure上にSQLデータベースコードファーストなAPIをODataで作成する。

記事を読む

no image

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

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

記事を読む

no image

Windows 10 IoT 系の概要、エディション、入手方法などを一度整理

Windows 10 IoT にここ最近振り回されているので、ここまで解釈した内容にて、まとメモ 正

記事を読む

Xamarin.Androidで起動時にアプリケーションを起動

RECEIVE_BOOT_COMPLETEDの権限必要 ActionBootCompleted を

記事を読む

【ストアアプリ】トースト通知の基本

Windowsストアアプリ開発での基本。 トースト通知について投稿します。 Pack

記事を読む

no image

【ストアアプリ】資格情報の保存と読み込み

こんにちは。 Windowsストアアプリで資格情報をセキュアに保存する方法について。

記事を読む

Package ‘Win10SDK_10.0.14393.33,version=10.0.14393.3300’ failed to install.

Visual Studio 2017 RC1 でUWPアプリケーションのコンポーネントインストールす

記事を読む

no image

FixedDocumentの印刷およびXPS形式での保存

こんにちは。 以前、XAMLファイルを帳票テンプレートとして動的ロードする記事を掲載しました。

記事を読む

Xamarin.Forms で NavigationPage を PushModalAsync すると例外が発生するときがある

Forms 2.3.4.231 Mapコントロールがあるページで、NavigationPage

記事を読む

初心者でも手順どおりに従うだけでロゴ画像が作れる

Webサイトを作ったので、ここを参考に ロゴ制作の練習をしました。  

記事を読む

Message

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

PAGE TOP ↑