197 lines
9.2 KiB
XML
197 lines
9.2 KiB
XML
<!--
|
|
This Source Code Form is subject to the terms of the MIT License.
|
|
If a copy of the MIT was not distributed with this file, You can obtain one at https://opensource.org/licenses/MIT.
|
|
Copyright (C) Leszek Pomianowski and WPF UI Contributors.
|
|
All Rights Reserved.
|
|
-->
|
|
|
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
|
|
|
<Style x:Key="UiSliderButtonStyle" TargetType="{x:Type RepeatButton}">
|
|
<Setter Property="IsTabStop" Value="False" />
|
|
<Setter Property="Focusable" Value="False" />
|
|
<Setter Property="SnapsToDevicePixels" Value="True" />
|
|
<Setter Property="OverridesDefaultStyle" Value="True" />
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type RepeatButton}">
|
|
<Border Background="Transparent" />
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<Style x:Key="UiSliderThumbStyle" TargetType="{x:Type Thumb}">
|
|
<Setter Property="Height" Value="20" />
|
|
<Setter Property="Width" Value="20" />
|
|
<Setter Property="SnapsToDevicePixels" Value="True" />
|
|
<Setter Property="OverridesDefaultStyle" Value="True" />
|
|
<Setter Property="BorderBrush" Value="{DynamicResource ControlElevationBorderBrush}" />
|
|
<Setter Property="Foreground" Value="{DynamicResource SliderThumbBackground}" />
|
|
<Setter Property="BorderThickness" Value="1" />
|
|
<Setter Property="Background" Value="{DynamicResource SliderOuterThumbBackground}" />
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type Thumb}">
|
|
<Border
|
|
Background="{TemplateBinding Background}"
|
|
BorderBrush="{TemplateBinding BorderBrush}"
|
|
BorderThickness="{TemplateBinding BorderThickness}"
|
|
CornerRadius="16">
|
|
<Ellipse
|
|
x:Name="Ellipse"
|
|
Width="12"
|
|
Height="12"
|
|
Fill="{TemplateBinding Foreground}"
|
|
Stroke="Transparent"
|
|
StrokeThickness="0" />
|
|
</Border>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<!-- Template when the orientation of the Slider is Horizontal. -->
|
|
<ControlTemplate x:Key="UiHorizontalSlider" TargetType="{x:Type Slider}">
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" MinHeight="{TemplateBinding MinHeight}" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
<TickBar
|
|
x:Name="TopTick"
|
|
Grid.Row="0"
|
|
Height="6"
|
|
Fill="{DynamicResource SliderTickBarFill}"
|
|
Placement="Top"
|
|
SnapsToDevicePixels="True"
|
|
Visibility="Collapsed" />
|
|
<Border
|
|
x:Name="TrackBackground"
|
|
Grid.Row="1"
|
|
Height="4"
|
|
Margin="0"
|
|
Background="{DynamicResource SliderTrackFill}"
|
|
BorderThickness="0"
|
|
CornerRadius="2" />
|
|
<Track x:Name="PART_Track" Grid.Row="1">
|
|
<Track.DecreaseRepeatButton>
|
|
<RepeatButton Command="Slider.DecreaseLarge" Style="{StaticResource UiSliderButtonStyle}" />
|
|
</Track.DecreaseRepeatButton>
|
|
<Track.Thumb>
|
|
<Thumb x:Name="Thumb" Style="{StaticResource UiSliderThumbStyle}" />
|
|
</Track.Thumb>
|
|
<Track.IncreaseRepeatButton>
|
|
<RepeatButton Command="Slider.IncreaseLarge" Style="{StaticResource UiSliderButtonStyle}" />
|
|
</Track.IncreaseRepeatButton>
|
|
</Track>
|
|
<TickBar
|
|
x:Name="BottomTick"
|
|
Grid.Row="2"
|
|
Height="6"
|
|
Fill="{DynamicResource SliderTickBarFill}"
|
|
Placement="Bottom"
|
|
SnapsToDevicePixels="True"
|
|
Visibility="Collapsed" />
|
|
</Grid>
|
|
<ControlTemplate.Triggers>
|
|
<Trigger Property="TickPlacement" Value="TopLeft">
|
|
<Setter TargetName="TopTick" Property="Visibility" Value="Visible" />
|
|
</Trigger>
|
|
<Trigger Property="TickPlacement" Value="BottomRight">
|
|
<Setter TargetName="BottomTick" Property="Visibility" Value="Visible" />
|
|
</Trigger>
|
|
<Trigger Property="TickPlacement" Value="Both">
|
|
<Setter TargetName="TopTick" Property="Visibility" Value="Visible" />
|
|
<Setter TargetName="BottomTick" Property="Visibility" Value="Visible" />
|
|
</Trigger>
|
|
<Trigger Property="IsMouseOver" Value="True">
|
|
<Setter TargetName="TrackBackground" Property="Background" Value="{DynamicResource SliderTrackFillPointerOver}" />
|
|
<Setter TargetName="Thumb" Property="Foreground" Value="{DynamicResource SliderThumbBackgroundPointerOver}" />
|
|
</Trigger>
|
|
</ControlTemplate.Triggers>
|
|
</ControlTemplate>
|
|
|
|
<!-- Template when the orientation of the Slider is Vertical. -->
|
|
<ControlTemplate x:Key="UiVerticalSlider" TargetType="{x:Type Slider}">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="Auto" MinWidth="{TemplateBinding MinWidth}" />
|
|
<ColumnDefinition Width="Auto" />
|
|
</Grid.ColumnDefinitions>
|
|
<TickBar
|
|
x:Name="TopTick"
|
|
Width="6"
|
|
Fill="{DynamicResource SliderTickBarFill}"
|
|
Placement="Left"
|
|
SnapsToDevicePixels="True"
|
|
Visibility="Collapsed" />
|
|
<Border
|
|
x:Name="TrackBackground"
|
|
Grid.Column="1"
|
|
Width="4"
|
|
Margin="0"
|
|
Background="{DynamicResource SliderTrackFill}"
|
|
BorderThickness="0"
|
|
CornerRadius="2" />
|
|
|
|
<Track x:Name="PART_Track" Grid.Column="1">
|
|
<Track.DecreaseRepeatButton>
|
|
<RepeatButton Command="Slider.DecreaseLarge" Style="{StaticResource UiSliderButtonStyle}" />
|
|
</Track.DecreaseRepeatButton>
|
|
<Track.Thumb>
|
|
<Thumb x:Name="Thumb" Style="{StaticResource UiSliderThumbStyle}" />
|
|
</Track.Thumb>
|
|
<Track.IncreaseRepeatButton>
|
|
<RepeatButton Command="Slider.IncreaseLarge" Style="{StaticResource UiSliderButtonStyle}" />
|
|
</Track.IncreaseRepeatButton>
|
|
</Track>
|
|
<TickBar
|
|
x:Name="BottomTick"
|
|
Grid.Column="2"
|
|
Width="6"
|
|
Fill="{DynamicResource SliderTickBarFill}"
|
|
Placement="Right"
|
|
SnapsToDevicePixels="True"
|
|
Visibility="Collapsed" />
|
|
</Grid>
|
|
<ControlTemplate.Triggers>
|
|
<Trigger Property="TickPlacement" Value="TopLeft">
|
|
<Setter TargetName="TopTick" Property="Visibility" Value="Visible" />
|
|
</Trigger>
|
|
<Trigger Property="TickPlacement" Value="BottomRight">
|
|
<Setter TargetName="BottomTick" Property="Visibility" Value="Visible" />
|
|
</Trigger>
|
|
<Trigger Property="TickPlacement" Value="Both">
|
|
<Setter TargetName="TopTick" Property="Visibility" Value="Visible" />
|
|
<Setter TargetName="BottomTick" Property="Visibility" Value="Visible" />
|
|
</Trigger>
|
|
<Trigger Property="IsMouseOver" Value="True">
|
|
<Setter TargetName="TrackBackground" Property="Background" Value="{DynamicResource SliderTrackFillPointerOver}" />
|
|
<Setter TargetName="Thumb" Property="Foreground" Value="{DynamicResource SliderThumbBackgroundPointerOver}" />
|
|
</Trigger>
|
|
</ControlTemplate.Triggers>
|
|
</ControlTemplate>
|
|
|
|
<Style TargetType="{x:Type Slider}">
|
|
<Setter Property="FocusVisualStyle" Value="{DynamicResource DefaultControlFocusVisualStyle}" />
|
|
<Setter Property="SnapsToDevicePixels" Value="True" />
|
|
<Setter Property="OverridesDefaultStyle" Value="True" />
|
|
<Style.Triggers>
|
|
<Trigger Property="Orientation" Value="Horizontal">
|
|
<Setter Property="MinWidth" Value="104" />
|
|
<Setter Property="MinHeight" Value="21" />
|
|
<Setter Property="Template" Value="{StaticResource UiHorizontalSlider}" />
|
|
</Trigger>
|
|
<Trigger Property="Orientation" Value="Vertical">
|
|
<Setter Property="MinWidth" Value="21" />
|
|
<Setter Property="MinHeight" Value="104" />
|
|
<Setter Property="Template" Value="{StaticResource UiVerticalSlider}" />
|
|
</Trigger>
|
|
</Style.Triggers>
|
|
</Style>
|
|
|
|
</ResourceDictionary>
|