0

我想创建一个自定义滑块,在拇指前后有不同的颜色 - 我已经设法实现了。问题是,这就是它的样子:点击

我想要实现的是灰色边框隐藏在拇指下方 - 在中间。但是,当我尝试在 DecreaseSliderButtonStyle 边框中设置负边距时,它会与拇指重叠。

有一个代码: http: //pastebin.com/5pcqHmDX(我认为 XAML 格式在 pastebin 上看起来更好)

提前致谢。

4

1 回答 1

0

试试这些风格:

<Style x:Key="DecreaseSliderButtonStyle" TargetType="{x:Type RepeatButton}">
    <Setter Property="SnapsToDevicePixels" Value="true"/>
    <Setter Property="OverridesDefaultStyle" Value="true"/>
    <Setter Property="IsTabStop" Value="false"/>
    <Setter Property="Focusable" Value="false"/>
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type RepeatButton}">
                <Border Height="18" Background="DimGray" CornerRadius="0,6,6,0" Margin="0,0,0,0" />
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>




<Style x:Key="SliderThumbStyle" TargetType="Thumb">
    <Setter Property="SnapsToDevicePixels" Value="true"/>
    <Setter Property="OverridesDefaultStyle" Value="false"/>
    <Setter Property="Height" Value="18"/>
    <Setter Property="Width" Value="18"/>
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="Thumb">
                <Grid>
                    <Border CornerRadius="9,0,0,9"
                            Background="DimGray"/>
                    <Ellipse Stroke="Black"
                             StrokeThickness="1"
                             Name="Ellipse"
                             Fill="Orange"></Ellipse>
                </Grid>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

如果您在拇指和灰色区域之间看到一条接缝线,请将此设置器添加到滑块样式中:

<Setter Property="UseLayoutRounding" Value="True"/>

当值非常接近Maximum.

于 2013-09-29T07:18:59.967 回答