Выделите сегменты на ползунке

Я ищу способ выделить сегменты (желтым цветом) на ползунке / индикаторе выполнения следующим образом:

пример ползунка с выделенными сегментами

Я нашел статью, в которой обсуждается, как создать настраиваемый элемент управления ползунком WPF с помощью стиля:

Но мне нужно программно выделить данные сегменты на ползунке.

Например:

//Given:

List<Rectangle> rectangles; 

//And invoke

mycontrol.highlight(rectangles);

Как я мог это сделать? Или, более конкретно, как я могу рисовать на ползунке во время выполнения?


person Steven Du    schedule 04.03.2012    source источник
comment
Связанный: stackoverflow.com/q/10086930/1569   -  person Factor Mystic    schedule 04.02.2013


Ответы (1)


в слайдере, свойство IsSelectionRangeEnabled

Если true, вы можете использовать диапазон выбора для затенения части ползунка. Диапазон выбора позиции устанавливается с помощью свойств SelectionStart и SelectionEnd. Диапазон выбора не имеет внутреннего значения, но вы можете использовать его для любых целей. Например, медиаплееры иногда используют затемненную фоновую полосу, чтобы указать прогресс загрузки медиафайла.

person Stecenko Ruslan    schedule 04.03.2012
comment
Я проверил, что он может поддерживать только один диапазон выбора, как я могу сделать его для нескольких диапазонов выбора? - person Steven Du; 05.03.2012
comment
к сожалению, в слайдере и индикаторе выполнения только один диапазон выбора - person Stecenko Ruslan; 05.03.2012
comment
Спасибо за ответ. Я нашел способ обходного пути: поместите ползунок на холст, а затем нарисуйте его. - person Steven Du; 05.03.2012
comment
@DuSijun, было бы полезно, если бы вы могли показать пример, чтобы помочь другим на этом пути. - person SpoiledTechie.com; 13.11.2015