In diesem Beitrag soll ein einfacher Style für das WPF-Steuerelement CheckBox vorgestellt werden. Dabei wurde ein dunkles Farbschema gewählt, welches ideal zu dunklen Fensterhintergründen passt. Der Style verhilft den Checkboxen zu folgendem Aussehen:

Der dazugehörige XAML-Code sieht folgendermaßen aus:
<Style TargetType="CheckBox">
<Setter Property="SnapsToDevicePixels" Value="true"/>
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="FocusVisualStyle" Value="{x:Null}"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="CheckBox">
<BulletDecorator Background="Transparent">
<BulletDecorator.Bullet>
<Border x:Name="Border" Width="15" Height="15" CornerRadius="2" Background="#FF1B1B1B" BorderThickness="0">
<Path Width="9" Height="9" x:Name="CheckMark" SnapsToDevicePixels="False" Stroke="#FF0077C9" StrokeThickness="2" Data="M 0 4 L 3 8 8 0" />
</Border>
</BulletDecorator.Bullet>
<ContentPresenter Margin="4,0,0,0" VerticalAlignment="Center" HorizontalAlignment="Left" RecognizesAccessKey="True"/>
</BulletDecorator>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="false">
<Setter TargetName="CheckMark" Property="Visibility" Value="Collapsed"/>
</Trigger>
<Trigger Property="IsChecked" Value="{x:Null}">
<Setter TargetName="CheckMark" Property="Data" Value="M 0 8 L 8 0" />
</Trigger>
<Trigger Property="IsMouseOver" Value="true">
<Setter TargetName="Border" Property="Background" Value="#FF131313" />
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter TargetName="CheckMark" Property="Stroke" Value="#FF6C6C6C"/>
<Setter Property="Foreground" Value="Gray"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Wer mehr über Styles in WPF und deren Einbindung erfahren möchte, kann sich hier ausführlich darüber informieren.