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

関連記事

Visual Studio から Android SDK Managerが起動できない

Android SDKやエミュレーターイメージのアップデートを行いたい場合にAndroid SDK

記事を読む

Xcode標準テンプレート

Xcodeで新規Projectを作成した時にテンプレートを選ぶことが出来る。 「Choose a

記事を読む

no image

属性を使って、列挙型の列挙子を並び替え、フィルタリングする

メモだよ

記事を読む

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

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

記事を読む

no image

【UWP】CS1061 : ‘XXX’に’InitializeComponent’の定義が含まれておらず

いろいろなことに起因しており、引き起こされた問題であって、 根本的な原因ではない可能性はあるが、凡ミ

記事を読む

no image

【TFS2013】Visual Studio 2005 Professional から TFS2013へ接続

こんにちは。 私の周りではいまだにレガシーな開発環境を使いつづけているプロジェクトが多いです。

記事を読む

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

RECEIVE_BOOT_COMPLETEDの権限必要 ActionBootCompleted を

記事を読む

no image

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

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

記事を読む

【WPF/XAML】テキストボックスをテキストエリアにする

XAMLのTextBoxをHTMLのTextAreaのように表示・動作させる方法 <

記事を読む

no image

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

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

記事を読む

Message

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

PAGE TOP ↑