Программирование КПК и смартфонов на .NET Compact Framework | страница 17



и >EndUpdate, которые позволяют избежать мерцания при загрузке большого числа элементов.

ВНИМАНИЕ

Внешний вид и поведение элемента ComboBox в смартфонах немного отличается от аналогичных элементов в КПК. Более подробно об отличиях будет рассказано в соответствующей главе.

Элемент ListBox

Элемент >ComboBox хорош для приложений с ограниченными пространствами формы, а список >ListBox можно использовать, если на экране достаточно места для отображения всех пунктов списка. Список >ListBox сразу показывает все имеющиеся элементы списка, при необходимости добавляя вертикальную полоску прокрутки, если все элементы списка не могут быть отображены одновременно.

Элементы >ComboBox и >ListBox имеют почти одинаковый набор свойств и методов. В листинге 3.6 показано, как можно программно добавить несколько строк в список >ListBox.

Листинг 3.6

>lstFruit.Items.Add("Яблоко");

>lstFruit.Items.Add("Груша");

>lstFruit.Items.Add("Слива");

>lstFruit.Items.Add("Персик");

Свойство >SelectedIndex содержит порядковый номер выбранного элемента списка. Если указать этот индекс в коде приложения, то выбранный элемент будет немедленно выделен в списке соответствующим цветом. Если никакой элемент не выбран, то свойство >SelectedIndex имеет значение -1. Также класс поддерживает свойство >SelectedItem, которое соответствует одноименному свойству класса >ComboBox.

Из часто используемых свойств элемента >ListBox в полной версии NET Framework можно выделить свойство >MultiColumn, которое не поддерживается в .NET Compact Framework. В нем отсутствует горизонтальная полоска прокрутки, даже если строки текста не умещаются в списке полностью. Также не поддерживается многострочное выделение, поэтому пользователь может выбрать только один элемент списка.

Элемент NumericUpDown

Элемент >NumericUpDown позволяет создавать счетчик с числовым полем ввода. Такой элемент интерфейса помогает пользователю быстро выбрать число из заданного диапазона. Элемент может работать только с целыми числа типа >Integer. Десятичные значения округляются.

Разработчик управляет поведением элемента >NumericUpDown при помощи свойств >Minimum, >Maximum, >Value и >Increment. Свойства >Minimum и >Maximum определяют максимальное и минимальное значения элемента. Свойство >Value содержит текущее значение в поле ввода. Свойство >Increment определяет величину увеличения или уменьшения значения в поле, когда пользователь нажимает кнопки со стрелками. Текущее значение всегда увеличивается и уменьшается на значение свойства