melculetz
melculetz

Reputation: 1971

Slider with multiple intervals

Currently, the WPF slider has some properties that allow defining and viewing a single interval on a slider: SelectionStart, SelectionEnd and IsSelectionRangeEnabled.

By setting these values

<Slider Minimum="0" Maximum="300" Value="150" IsSelectionRangeEnabled="True" SelectionStart="50" SelectionEnd="200"/>

you get the selected interval in the slider, colored in blue, like this:

enter image description here

What I would like to do is to be able to define multiple intervals - e.g. (50-100), (110-130), (170-200) and (210-240), which would look like this:

enter image description here

Any ideas on how to aproach this issue or what template I should try modifying in order to get this feature?

Upvotes: 7

Views: 3212

Answers (2)

Dean Chalk
Dean Chalk

Reputation: 20461

Use the Ticks property to set multiple intervals. I am not sure exactly how you wanted it to work from your explaination above, but here is an example:

<Slider Minimum="0" Maximum="300" Value="150" 
IsSelectionRangeEnabled="True" SelectionStart="50" 
SelectionEnd="200" IsMoveToPointEnabled="True" 
TickPlacement="BottomRight" Ticks="50, 100, 105, 140, 150, 200" IsSnapToTickEnabled="True" />

Upvotes: 0

Steven Du
Steven Du

Reputation: 1691

This may not be an answer but a workaround. I place the slider bar on canvas, then draw to canvas: Highlight segments on slider bar

Upvotes: 2

Related Questions