Condividi tramite


Sintassi dichiarativa per il controllo server Web CheckBoxList

Aggiornamento: novembre 2007

Crea un gruppo di caselle di controllo a selezione multipla. Il controllo supporta l'associazione a un'origine dati.

<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>

Note

Il controllo CheckBoxList crea un gruppo di caselle di controllo a selezione multipla che può essere generato in modo dinamico tramite l'associazione dati. Per specificare gli elementi che si desidera visualizzare nel controllo CheckBoxList, inserire un elemento ListItem per ogni voce tra i tag di apertura e di chiusura del controllo CheckBoxList.

Nota

È anche possibile utilizzare più controlli CheckBox. Con il controllo CheckBoxList la creazione di un insieme di caselle di controllo mediante l'associazione dati risulta più semplice. Un singolo controllo CheckBox consente invece un maggiore controllo sul layout.

Inoltre, il controllo CheckBoxList supporta l'associazione dati. Per associare il controllo a un'origine dati, creare un'origine dati, ad esempio uno degli oggetti DataSourceControl, che contiene gli elementi da visualizzare nel controllo. Utilizzare, quindi, il metodo DataBind per associare l'origine dati al controllo CheckBoxList. Utilizzare le proprietà DataTextField e DataValueField per specificare il campo dell'origine dati da associare rispettivamente alle proprietà Text e Value di ogni voce dell'elenco del controllo. Il controllo CheckBoxList visualizzerà le informazioni dell'origine dati.

Per determinare gli elementi selezionati nel controllo CheckBoxList, scorrere l'insieme Items ed eseguire un test della proprietà Selected di ogni elemento dell'insieme.

È possibile specificare la modalità di visualizzazione dell'elenco mediante le proprietà RepeatLayout e RepeatDirection. Se la proprietà RepeatLayout è impostata su RepeatLayout.Table (impostazione predefinita), l'elenco viene visualizzato all'interno di una tabella. Se è impostata su RepeatLayout.Flow, il rendering dell'elenco sarà eseguito senza strutture tabellari. Per impostazione predefinita, la proprietà RepeatDirection è impostata su RepeatDirection.Vertical. Se si imposta questa proprietà su RepeatDirection.Horizontal, l'elenco viene visualizzato orizzontalmente.

Attenzione:

Il testo non viene codificato in formato HTML prima di essere visualizzato nel controllo CheckBoxList. È pertanto possibile incorporare script all'interno dei tag HTML presenti nel testo. Se i valori del controllo provengono dall'input dell'utente, assicurarsi di convalidare tali valori per evitare problemi di protezione.

Per informazioni dettagliate sulle proprietà e sugli eventi del controllo server Web CheckBoxList, vedere la documentazione relativa alla classe CheckBoxList.

Esempio

Nell'esempio riportato di seguito viene illustrata una dichiarazione per un controllo CheckBoxListin un file aspx. Nell'elenco sono presenti sei elementi che non si escludono a vicenda. Quando un utente seleziona una delle caselle, non viene eseguito immediatamente il postback della pagina al server. La pagina viene inviata solo quando si verifica un altro evento, ad esempio quando viene fatto clic su un controllo Button. Non viene richiamato alcun gestore eventi OnSelectedIndexChanged perché per l'evento non è stato dichiarato alcun metodo.

  <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>

Nell'esempio riportato di seguito viene illustrato come determinare le caselle di controllo selezionate in un controllo CheckBoxList. Il codice scorre l'insieme Items del controllo ed esegue il test della proprietà Selected di ciascun elemento. Gli elementi selezionati vengono quindi visualizzati nel controllo 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;
}

Vedere anche

Riferimenti

CheckBoxList

Altre risorse

Sintassi dei controlli server Web