Общие сведения о серверных веб-элементах управления RadioButton и RadioButtonList
Обновлен: Ноябрь 2007
Элементы управления RadioButton и RadioButtonList позволяют пользователям осуществлять выбор из небольшого набора взаимно исключающих предопределенных вариантов.
В данном разделе рассматриваются следующие темы:
Функциональные возможности
Базовые сведения
Примеры кода
Справочные сведения по классам
Функциональные возможности
Элементы управления CheckBox и CheckBoxList можно использовать для реализации следующих задач:
Организации обратной передачи страницы при установлении переключателя.
Перехватывания взаимодействия пользователя при установлении переключателя.
Связывания каждого переключателя с данными из базы данных.
К началу
Основные сведения
Для добавления переключателей на веб-страницу ASP.NET можно использовать два типа серверных веб-элементов управления: отдельные элементы управления RadioButton или элемент управления RadioButtonList. Оба элемента управления позволяют пользователю осуществлять выбор элемента из небольшого набора взаимоисключающих предварительно определенных вариантов. Элементы управления позволяют определить любое число переключателей с метками и выровнять их по горизонтали или вертикали.
При работе с элементами управления RadioButton необходимо поочередно добавить каждый элемент на страницу и работать с ним как с отдельным элементом. Обычно выполняется группировка двух или нескольких отдельных переключателей.
В отличие вышеуказанных элементов управления, RadioButtonList представляет собой один элемент управления, выступающий в качестве родительского элемента управления для коллекции элементов списка переключателей. Класс данного элемента является производным от класса ListControl. Данный элемент управления работает аналогично серверным веб-элементам управления ListBox, DropDownListBulletedList и CheckBoxList. Поэтому многие процедуры для работы с элементом управления RadioButtonList совпадают с процедурами для других списочных серверных веб-элементов управления.
У каждого из описанных элементов управления есть свои преимущества. Использование отдельных элементов управления RadioButton предоставляет большую свободу в расположении группы переключателей на странице, чем при использовании элемента управления RadioButtonList. Например, можно задать текст между переключателями.
Если необходимо создать группу переключателей на основе данных в источнике данных, то лучше использовать элемент управления RadioButtonList. Кроме того, с помощью данного элемента управления несколько проще написать код, выполняющий проверку выбранного переключателя.
Примечание. |
---|
Кроме того, для добавления переключателей на веб-страницу ASP.NET можно использовать серверный элемент управления HtmlInputRadioButton. Дополнительные сведения см. в разделе Декларативный синтаксис серверного элемента управления HtmlInputRadioButton. |
Если необходимо предоставить пользователю длинный списков вариантов или список, длина которого может варьироваться во время выполнения, используйте серверный веб-элемент управления ListBox или DropDownList.
Группировка переключателей
Один переключатель используется крайне редко. Как правило выполняется группировка переключателей, которые представляют набор взаимоисключающих параметров. В группе переключателей можно выбрать только один элемент. Сгруппировать переключатели можно следующими способами:
Добавить на страницу отдельные серверные веб-элементы управления RadioButton и вручную назначить все переключатели одной группе. Имя группы может быть произвольным. Все переключатели с одинаковым именем группы рассматриваются как элементы одной группы.
Добавить на страницу серверный веб-элемент управления RadioButtonList. Элементы списка в данном элементе управления уже автоматически сгруппированы.
События RadioButton и RadioButtonList
Обработка событий для элементов управления RadioButton и элемента управления RadioButtonList существенно отличается.
Отдельные элементы управления RadioButton
При выборе пользователем элемента управления RadioButton возникает событие CheckedChanged. Данное событие наследуется от элемента управления CheckBox. По умолчанию данное событие не вызывает немедленную отправку страницы на сервер. Однако можно задать принудительное выполнение обратной передачи, указав в свойстве AutoPostBack значение true. Дополнительные сведения об ответе на данное событие см. в разделе Практическое руководство. Ответ на выбор пользователя в группе серверного веб-элемента RadioButton.
Примечание. |
---|
Для автоматического выполнения обратной передачи необходимо, чтобы веб-обозреватель поддерживал ECMAScript (JScript или JavaScript), а также чтобы данные сценарии были разрешены в обозревателе пользователя. |
Возможно потребуется создать обработчик для события CheckedChanged. Выбранный переключатель можно проверить в любом коде, который выполняется как часть страницы. Как правило, обработчик для события CheckedChanged создается только в том случае, если необходимо знать, что переключатель был изменен, а не просто для чтения текущего выделения. Дополнительные сведения см. в разделе Практическое руководство. Установка и получение выбранного элемента в серверном веб-элементе управления RadioButton.
Элемент управления RadioButtonList
При изменении пользователем выбранного в списке переключателя элемент управления RadioButtonList вызывает событие SelectedIndexChanged. По умолчанию данное событие не приводит к немедленной отправке страницы на сервер. Однако можно задать принудительное выполнение обратной передачи, указав в свойстве AutoPostBack значение true. Дополнительные сведения см. в разделе Практическое руководство. Отклик на изменения в списочных серверных веб-элементах управления.
Примечание. |
---|
Для автоматического выполнения обратной передачи необходимо, чтобы веб-обозреватель поддерживал ECMAScript (JScript или JavaScript), а также чтобы данные сценарии были разрешены в обозревателе пользователя. |
Как и при работе с отдельными элементами управления RadioButton, проверка состояния элемента управления RadioButtonList обычно выполняется после отправки страницы каким-либо другим способом. Дополнительные сведения см. в разделе Практическое руководство. Определение выбранного элемента в списочных серверных веб-элементах управления.
Атрибуты HTML-элемента управления RadioButton
Отображение элемента управления RadioButton в веб-обозревателе состоит из двух частей: элемента input, представляющего сам переключатель и отдельного элемента label, представляющего заголовок для переключателя. Комбинация двух элементов упаковывается в элемент span.
При применении стиля или параметров атрибутов для элемента управления RadioButton параметры будут применены к внешнему элементу span. Например, если задать свойство BackColor элемента управления, то параметр применяется к элементу span. Таким образом, установка свойства оказывает влияние на внутренние элементы input и label.
Иногда может потребоваться применение различных параметров для переключателя и метки. Элемент управления RadioButton поддерживает два свойства, которые можно задать во время выполнения. Свойство InputAttributes позволяет добавлять атрибуты HTML к элементу input, а свойство LabelAttributes позволяет добавлять атрибуты HTML к элементу label. Заданные атрибуты передаются в исходном виде в веб-обозреватель. В следующем примере показано, как установить атрибуты для элемента input таким образом, чтобы при наведении указателя мыши изменял цвет только переключатель, а метка оставалась без изменений.
RadioButton1.InputAttributes.Add("onmouseover", _
"this.style.backgroundColor = 'red'")
RadioButton1.InputAttributes.Add("onmouseout", _
"this.style.backgroundColor = 'white'")
RadioButton1.InputAttributes.Add("onmouseover",
"this.style.backgroundColor = 'red'");
RadioButton1.InputAttributes.Add("onmouseout",
"this.style.backgroundColor = 'white'");
Связывание данных с элементом управления
К источнику данных можно привязать отдельный элемент управления RadioButton. Кроме того, можно привязать любое свойство элемента управления RadioButton к любому полю источника данных. Например, можно задать свойство Text элемента управления на основе сведений из базы данных.
Как правило, переключатели используются в группах, поэтому связывание отдельного переключателя с источником данных не используется. Вместо этого выполняется привязка элемента управления RadioButtonList к источнику данных. В данном случае источник данных динамически создает переключатели (элементы списка) для каждой записи источника данных.
К началу
Примеры кода
Практическое руководство. Ответ на выбор пользователя в группе серверного веб-элемента RadioButton
Практическое руководство. Добавление элементов в серверные веб-элементы управления со списком
Практическое руководство. Отклик на изменения в списочных серверных веб-элементах управления
К началу
Справочные сведения по классам
В следующей таблице перечислены классы, связанные с элементами управления RadioButton и RadioButtonList.
Член |
Описание |
---|---|
Основной класс для элемента управления RadioButton. |
|
Основной класс для элемента управления RadioButtonList. |
|
Класс, представляющий каждый элемент в элементе управления RadioButtonList. |
|
Коллекция элементов, соответствующих отдельным элементам в списке для элемента управления RadioButtonList. |
К началу
См. также
Задачи
Практическое руководство. Выбор элементов в серверных веб-элементах управления "Список"
Ссылки
Общие сведения о серверных веб-элементах управления CheckBox и CheckBoxList