Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_CSharp_5.docx
Скачиваний:
32
Добавлен:
11.11.2019
Размер:
475.45 Кб
Скачать

5.14. Списковые элементы управления

Списковые элементы управления обеспечивают различные способы представления списков и таблиц. Название и назначение списковых элементов приведено в табл. 26.

Таблица 26

Списковые элементы управления

Элемент

Описание

BulletedList

Вывод элемента управления состоит из HTML-тэгов <ul> и <ol>, то есть представляет собой маркированный или нумерованный список 

CheckBoxList

Создает HTML-элемент <table> или простой список, содержащий HTML-флажки

DropDownList

Создает на странице элемент <select> с атрибутом size="1", то есть раскрывающийся список с одной видимой строкой

ListBox

Создает элемент <select> с атрибутом size="n", чтобы построить обычное поле списка с единичным или множественным выбором и более чем одной видимой строкой

RadioButtonList

Создает HTML-элемент <table> или простой список, содержащий HTML-переключатели

Все списковые элементы управления имеют общего предка – класс ListControl. Полезные свойства данного класса описываются в табл. 27.

Таблица 27

Свойства класса ListControl

Имя свойства

Описание

AppendDataBoundItems

Булево значение; указывает, нужно ли добавлять загружаемые в элемент управления новые данные в конце существующего набора его данных 

AutoPostBack

Булево значение; показывает, будет ли страница автоматически отправляться на сервер при изменении пользователем выбора в списке

DataMember

Имя таблицы в DataSource

DataSource

Источник данных для значений списка при заполнении списка путем связывания данных

DataTextField

Имя поля в DataSource, содержимое которого будет отображаемым текстом элементов списка

DataTextFormatString

Строка форматирования для значений из DataTextField (например, {0:C} для денежных сумм)

DataValueField

Имя поля в DataSource, содержимое которого будет значением элементов списка (свойство Value объекта ListItem)

Items

Коллекция элементов ListItem, содержащихся в списке

SelectedIndex

Индекс первого выбранного элемента в списке1

SelectedItem

Ссылка на первый выбранный элемент ListItem

SelectedValue

Значение первого выбранного элемента ListItem. Если у элемента задано свойство Value, то возвращается именно оно. Иначе возвращается значение свойства ListItem.Text

Кроме описанных свойств класс ListControl предоставляет серверное событие SelectedIndexChanged. Оно генерируется, когда выбор в списке изменяется и страница пересылается на сервер.

Отдельные элементы списка данных хранятся в коллекции Items и представлены объектами класса ListItem. Свойство Text этого класса содержит выводимый текст элемента, свойство Value задает ассоциируемое с элементом значение, а булево свойство Selected указывает, выбран ли элемент. Статический метод ListItem.FromString() возвращает объект ListItem, созданный на основе строки-параметра.

Коллекцию Items можно заполнить посредством связывания данных или декларативно, используя набор тэгов <asp:ListItem>, размещаемых в контейнере спискового элемента управления. Ниже показан пример описания на странице элемента BulletedList.

<asp:BulletedList ID="myList" runat="server" BulletStyle="Square">

<asp:ListItem Value="1" Text="One" />

<asp:ListItem Value="2" Text="Two" />

<asp:ListItem Value="3" Text="Three" />

</asp:BulletedList>

Каждый списковый элемент добавляет к своему базовому классу некоторые специфичные свойства и методы. Элементы управления CheckBoxList и RadioButtonList содержат свойства CellPadding ‑ расстояние в пикселях между рамкой и ячейкой; CellSpacing ‑ расстояние в пикселях между ячейками; RepeatColumns – количество выводимых столбцов; RepeatDirection – вывод списка по горизонтали или вертикали; RepeatLayout ‑ значение, определяющее способ вывода элемента управления (Table (в виде таблицы) или Flow (просто группа элементов)), TextAlign – выравнивание текста. У класса ListBox имеется свойство Rows, содержащее число видимых строк элемента, и SelectionMode, определяющее, допустим ли множественный выбор. Элемент управления BulletedList позволяет настроить стиль маркера или номера (свойство BulletStyle), указать путь к изображению, которое будет использоваться в качестве маркера (свойство BulletImageUrl), и настроить значение, с которого будет начинаться нумерация (свойство FirstBulletNumber).