Поделиться через


Декларативный синтаксис серверного веб-элемента управления 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.

8bw4x4wa.alert_note(ru-ru,VS.90).gifПримечание.

Также можно использовать несколько элементов управления 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, список отображается горизонтально.

8bw4x4wa.alert_caution(ru-ru,VS.90).gifВнимание!

Отображаемый в элементе управления 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;
}

См. также

Ссылки

CheckBoxList

Другие ресурсы

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