I am working on a project where I need to have prices. So I used a RangeSlider from the Extended WPF Toolkit to select price range.
I also made 2 textblocks that display the lower and the higher value. But the problem is that it displays only numbers with decimals. I want integers.
<wpfTool:RangeSlider Name="rangeSlider" Grid.Row="4" LowerValue="300" Minimum="300" Maximum="2300" HigherValue="2300" LowerValueChanged="RangeSlider_LowerValueChanged"/>
<WrapPanel Orientation="Horizontal" Margin="0,0,26.983,0">
<TextBlock Text="{Binding LowerValue, ElementName=rangeSlider, UpdateSourceTrigger=PropertyChanged}"/>
<TextBlock Width="50"/>
<TextBlock Text="{Binding HigherValue, ElementName=rangeSlider, UpdateSourceTrigger=PropertyChanged}" Width="44"/>
<TextBlock Text="€" Width="11"/>
</WrapPanel>
RangeSlider has 2 Slider controls in its template. You can make Slider to select only integers. The relevant property is IsSnapToTickEnabled
. To change that property for nested Sliders add a style into RangeSlider Resources:
<wpfTool:RangeSlider Name="rangeSlider" Grid.Row="4"
LowerValue="300" Minimum="300" Maximum="2300" HigherValue="2300"
LowerValueChanged="RangeSlider_LowerValueChanged"/>
<wpfTool:RangeSlider.Resources>
<Style TargetType="Slider">
<Setter Property="IsSnapToTickEnabled" Value="True"/>
</Style>
</wpfTool:RangeSlider.Resources>
</wpfTool:RangeSlider>