Декларативный синтаксис серверного веб-элемента управления CheckBoxList
Обновлен: Ноябрь 2007
Создает группу флажков с несколькими вариантами выбора. Этот элемент управления поддерживает привязку к источнику данных.
<asp:CheckBoxList
AccessKey="string"
AppendDataBoundItems="True|False"
AutoPostBack="True|False"
BackColor="color name|#dddddd"
BorderColor="color name|#dddddd"
BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|
Inset|Outset"
BorderWidth="size"
CausesValidation="True|False"
CellPadding="integer"
CellSpacing="integer"
CssClass="string"
DataMember="string"
DataSource="string"
DataSourceID="string"
DataTextField="string"
DataTextFormatString="string"
DataValueField="string"
Enabled="True|False"
EnableTheming="True|False"
EnableViewState="True|False"
Font-Bold="True|False"
Font-Italic="True|False"
Font-Names="string"
Font-Overline="True|False"
Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
Large|X-Large|XX-Large"
Font-Strikeout="True|False"
Font-Underline="True|False"
ForeColor="color name|#dddddd"
Height="size"
ID="string"
OnDataBinding="DataBinding event handler"
OnDataBound="DataBound event handler"
OnDisposed="Disposed event handler"
OnInit="Init event handler"
OnLoad="Load event handler"
OnPreRender="PreRender event handler"
OnSelectedIndexChanged="SelectedIndexChanged event handler"
OnTextChanged="TextChanged event handler"
OnUnload="Unload event handler"
RepeatColumns="integer"
RepeatDirection="Horizontal|Vertical"
RepeatLayout="Table|Flow"
runat="server"
SelectedIndex="integer"
SelectedValue="string"
SkinID="string"
Style="string"
TabIndex="integer"
TextAlign="Left|Right"
ToolTip="string"
ValidationGroup="string"
Visible="True|False"
Width="size"
>
<asp:ListItem
Enabled="True|False"
Selected="True|False"
Text="string"
Value="string"
/>
</asp:CheckBoxList>
Заметки
Элемент управления CheckBoxList создает группу флажков с несколькими вариантами выбора, которую можно создавать динамически с помощью привязки данных. Для задания записей, которые должны отображаться в элементе управления CheckBoxList, разместите элемент ListItem для каждой записи внутри открывающих и закрывающих тегов элемента управления CheckBoxList.
Примечание. |
---|
Также можно использовать несколько элементов управления CheckBox. Элементом управления CheckBoxList проще пользоваться, когда нужно создать набор флажков с помощью привязки к данным, а отдельные элементы управления CheckBox дают больше возможностей управления макетом. |
Элемент управления CheckBoxList также поддерживает привязку к данным. Чтобы осуществить привязку элемента управления к источнику данных, сначала необходимо создать источник данных, например, один из объектов DataSourceControl, в котором содержатся элементы, отображаемые в элементе управления. Затем с помощью метода DataBind источник данных связывается с элементом управления CheckBoxList. Свойства DataTextField и DataValueField используются для указания полей в источнике данных, которые требуется связать со свойствами Text и Value каждого элемента списка в элементе управления, соответственно. Элемент управления CheckBoxList теперь будет отображать сведения из источника данных.
Чтобы определить выбранные элементы в элементе управления CheckBoxList, необходимо выполнить итерацию всех элементов коллекции Items и проверить свойство Selected каждого элемента в коллекции.
Можно указать способ отображения списка с помощью свойств RepeatLayout и RepeatDirection. Если свойство RepeatLayout имеет значение RepeatLayout.Table (значение по умолчанию), список отображается в виде таблицы. Если свойство имеет значение RepeatLayout.Flow, список отображается без какой-либо табличной структуры. По умолчанию свойство RepeatDirection имеет значение RepeatDirection.Vertical. Если свойству задается значение RepeatDirection.Horizontal, список отображается горизонтально.
Внимание! |
---|
Отображаемый в элементе управления CheckBoxList текст не преобразуется в формат HTML. Это позволяет внедрять в текст сценарий, заключенный в теги HTML. Если значения элемента управления вводятся пользователем, следует проверить их на допустимость, чтобы избежать возникновения уязвимых мест. |
Подробные сведения о свойствах и событиях серверного веб-элемента управления CheckBoxList см. в описании класса CheckBoxList.
Пример
В следующем примере показан пример объявления в файле ASPX элемента управления CheckBoxList. Список содержит шесть не взаимоисключающих элементов. Установка одного из флажков не влечет за собой немедленную отправку страницы обратно на сервер (это происходит только в случае возникновения другого события, например нажатия кнопки Button). Обработчик событий OnSelectedIndexChanged не вызывается, поскольку метод для него не объявлен.
<asp:CheckBoxList id="Check1"
RepeatLayout="flow"
runat="server">
<asp:ListItem>Item 1</asp:ListItem>
<asp:ListItem>Item 2</asp:ListItem>
<asp:ListItem>Item 3</asp:ListItem>
<asp:ListItem>Item 4</asp:ListItem>
<asp:ListItem>Item 5</asp:ListItem>
<asp:ListItem>Item 6</asp:ListItem>
</asp:CheckBoxList>
<asp:CheckBoxList id="Check1"
RepeatLayout="flow"
runat="server">
<asp:ListItem>Item 1</asp:ListItem>
<asp:ListItem>Item 2</asp:ListItem>
<asp:ListItem>Item 3</asp:ListItem>
<asp:ListItem>Item 4</asp:ListItem>
<asp:ListItem>Item 5</asp:ListItem>
<asp:ListItem>Item 6</asp:ListItem>
</asp:CheckBoxList>
В следующем примере показано, как определить установленные флажки в элементе управления CheckBoxList. В коде выполняется итерация коллекции Items элемента управления и проверяется свойство Selected каждого элемента. Выбранные элементы отображаются затем в элементе управления Label.
Sub Button1_OnClick(ByVal sender As Object, ByVal e As EventArgs)
Dim s As String
Dim i As Integer
s = "Selected items:<br />"
For i = 0 To Check1.Items.Count - 1
If Check1.Items(i).Selected Then
s = s & Check1.Items(i).Text & "<br />"
End If
Next i
Label1.Text = s
End Sub
void Button1_OnClick(Object sender, EventArgs e)
{
string s;
s = "Selected items:<br />";
for (int i = 0; i < Check1.Items.Count; i++)
{
if (Check1.Items[i].Selected)
{
s = s + Check1.Items[i].Text + "<br />";
}
}
Label1.Text = s;
}