【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

【VB.NET】DataGridViewで行の最大高を設定

DataGridViewにおける行の最大高さを設定するメモ 最大高さに満たない場合は内容を全て表示

記事を読む

no image

【C#,WinForms】XMLデータをListViewに表示し、チェック項目のみXML保存させる

MSDNフォーラムの以下についてサンプルを組んだので掲載。 ListViewでチェックされた値

記事を読む

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

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

記事を読む

【iPhoneアプリ】開発者登録手順(iOS Developer Program) その1

iPhoneアプリの作成からリリースまでの一通りの流れを体験したかったため、 簡単なiPhon

記事を読む

no image

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

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

記事を読む

ストアアプリ、UWPアプリをデスクトップアプリケーションから起動する

SendKeyなどを使って無理やり検索ウインドウへ指定した、起動方法しか知らなかったのでメモ(とんで

記事を読む

拡張温度に対応した Windows 10 IoT Core ボード

Windows 10 IoT Core 対応ボード その2 こっちは拡張温度対応している。 Ban

記事を読む

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

RECEIVE_BOOT_COMPLETEDの権限必要 ActionBootCompleted を

記事を読む

Xamarin.Forms + Visual Studio Team Services ビルドタスクで自動バージョンアップ

Visual Studio Team Services で Xamarin.Forms の継続的デリ

記事を読む

no image

UWPとAzure Web AppsでOData

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

記事を読む

Message

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

PAGE TOP ↑