ColorDarknessStepsSlider

ColorDarknessStepsSlider

我想制作一个像这样的滑块:


请注意,几乎没有“ |”在每个滑块值之间,用户只能选择这些值。

但是我发现设置SmallChange和LargeChange是没有用的。

<TextBlock FontSize="44" Text="{Binding ElementName=ColorDarknessStepsSlider, Path=Value}"/>

<Slider x:Name="ColorDarknessStepsSlider" Margin="-12,0" Minimum="3" Maximum="5"
        SmallChange="1" LargeChange="1" />


我希望用户只能选择3、4、5,但这给了我:



我不知道怎么了我没有“ |”就可以了在值之间进行标记,但至少用户只能选择整数值3、4、5。我该怎么做?

最佳答案

您可以使用xaml来做到这一点[编辑:仅在WPF中存在,应用程序]:

    <Slider x:Name="ColorDarknessStepsSlider" Margin="-12,0" Minimum="3" Maximum="5"
    SmallChange="1" LargeChange="1" TickFrequency="1" />


或通过C#[编辑:一个好方法]

    private void ColorDarknessStepsSlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
    {
         double roundedValue =  Math.Round(ColorDarknessStepsSlider.Value, 0);
         //Check if it is a rounded value
         if(ColorDarknessStepsSlider.Value != roundedValue )
             ColorDarknessStepsSlider.Value = roundedValue ;
    }


希望它能有所帮助;)

10-06 10:38