Главная » Silverlight » Элементы управления на основе полосок

0

В Silverlight встроено три элемента управления на основе полосок: ScrollBar (Полоса прокрутки), Slider (Ползунок) и ProgressBar (Индикатор прогресса). Все они наследу­ют класс RangeBase (который в свою очередь наследует класс Control) и обрабатывают

значение, отображаемое на экране с помощью полосок разной длины. Кроме свойств, перечисленных в табл. 5.5, базовый класс RangeBase предоставляет свойство Tooltip и событие ValueChanged.

Таблица 5.5. Свойства класса RangeBase

Имя свойства

Описание

Value

Текущее значение элемента управления; должно находиться в диапазоне от Minimum до Maximum; по умолчанию равно 0; может принимать дробные значения; при изменении значения Value генерируется событие ValueChanged, которое можно использовать для задания реакции на изменение

Maximum

Максимально допустимое значение свойства Value

Minimum

Минимально допустимое значение свойства Value

SmallChange LargeChange

Шаг изменения свойства Value; поведение свойства SmallChange зависит от типа элемента управления; в некоторых случаях оно не используется; в элементах ScrollBar и Slider значение SmallChange задает приращение значения Value при однократном нажатии клавиши со стрелкой; в элементе ScrollBar оно задает также приращение при щелчке на квадратике со стрелкой, расположенном в конце полосы прокрутки; по умолчанию свойство имеет значение 0.1

Назначение свойства LargeChange зависит от типа элемента управления; в ScrollBar и Slider оно задает изменение значения Value при нажатии клавиши <PgUp> или <PgDown>; в ScrollBar оно задает также изменение значения Value при щелчке на полоске с любой стороны ползунка, отмечающего текущую позицию; по умолчанию имеет значение 1

Обычно использовать непосредственно элемент управления ScrollBar нет необхо­димости. Более полезен и удобен высокоуровневый элемент управления ScrollViwer (см. главу 3), который фактически является оболочкой для двух элементов ScrollBar. Однако элементы Slider и ProgressBar используются самостоятельно.

Элемент управления Slider

Элемент Slider (Ползунок) используется для установки числового значения с по­мощью мыши, когда значение может быть приблизительным. Например, с его помо­щью устанавливается громкость воспроизведения аудиофайла путем перетаскивания в одну или другую сторону. Точное числовое значение громкости для пользователя безразлично.

Ниже приведена разметка, создающая горизонтальный ползунок. Результат показан на рис. 5.16.

<Slider Orientation="Horizontal"

Minimum="0" Maximum="10" Width="100" />

Рис. 5.16. Ползунок

В отличие от WPF, ползунок Silverlight не предоставляет никаких свойств, которые позволили бы делать вдоль него отметки. Изменить внешний вид ползунка можно с по­мощью шаблонов элементов управления (см. главу 13).

Элемент управления ProgressBar

Элемент ProgressBar (Индикатор прогресса) предназначен для отображения на экране процента выполнения длительной задачи. В отличие от ползунка, индикатор прогресса не обладает свойствами интерактивности. Пользователь не может изменять значение Value. Периодическое приращение значения Value должно выполняться ко­дом. По умолчанию свойство Minimum имеет значение 0, a Maximum — значение 100. В этом случае значение Value отображает процент выполнения задачи. Пример исполь­зования индикатора прогресса можно найти в главе 6, где он используется для отобра­жения процента загрузки большого файла из Интернета.

В некоторых случаях неизвестны ни процент выполнения задачи, ни время, кото­рое она займет. Как же тогда установить значения Value и Maximum? Для таких случаев предназначено свойство Is Intermediate.

<ProgressBar Height="18" Width="200" IsIndeterminate="True"></ProgressBar>

Когда оно равно True, свойства Minimum, Maximum и Value не используются. Независимо от их значения, индикатор прогресса отображает заштрихованную по­лоску, правый конец которой постоянно перемещается слева направо, периодически перескакивая в левый конец. Таким образом, индикатор прогресса лишь сообщает поль­зователю, что задача выполняется, но не сообщает, сколько уже сделано и когда она будет завершена.

Источник: Мак-Дональд, Мэтью. Silverlight 3 с примерами на С# для профессионалов. : Пер. с англ. —- М. : ООО «И.Д. Вильяме», 2010. — 656 с. : ил. — Парал. тит. англ.

По теме:

  • Комментарии