Freigeben über


Gewusst wie: Bestimmen der Auswahl in List-Webserversteuerelementen

Aktualisiert: November 2007

Die Informationen in diesem Thema gelten für folgende Webserversteuerelemente: ListBox, DropDownList, CheckBoxList und RadioButtonList.

Eine der häufigsten Tasks bei der Arbeit mit einem List-Webserversteuerelement besteht darin, festzustellen, welches bzw. welche Elemente vom Benutzer ausgewählt wurden. Dieses Verfahren variiert abhängig davon, ob das Listensteuerelement die Einzel- oder Mehrfachauswahl unterstützt.

Das nachstehende Verfahren ist für das DropDownList-Steuerelement, das RadioButtonList-Steuerelement und das ListBox-Steuerelement mit Einzelauswahl geeignet.

So bestimmen Sie die Auswahl in einem Listensteuerelement, das die Einzelauswahl unterstützt

  • Verwenden Sie eine der folgenden Methoden:

    • Ermitteln Sie den Wert der SelectedIndex-Eigenschaft, um den Indexwert des ausgewählten Elements zu erhalten. Der Index ist nullbasiert. Falls kein Element ausgewählt wurde, ist der Wert der Eigenschaft "-1".

    • Ermitteln Sie den Wert der SelectedItem-Eigenschaft des Steuerelements, um den Inhalt des ausgewählten Elements zu erhalten. Diese Eigenschaft gibt ein Objekt vom Typ ListItem zurück. Sie können den Inhalt des ausgewählten Elements ermitteln, indem Sie die Text-Eigenschaft oder die Value-Eigenschaft des Objekts abrufen.

      Sicherheitshinweis:

      Steuerelemente auf einer Web Forms-Seite können potenziell bösartiges Clientskript enthalten. Standardmäßig wird durch die Web Forms-Seite sichergestellt, dass Benutzereingaben keine Skript- oder HTML-Elemente enthalten. Weitere Informationen finden Sie unter Gewusst wie: Schutz gegen Skriptangriffe in einer Webanwendung durch Anwenden von HTML-Codierung auf Zeichenfolgen.

    Das folgende Beispiel erläutert, wie Sie überprüfen können, welches Element in einem RadioButtonList-Steuerelement ausgewählt wurde. Zunächst wird durch den Code überprüft, ob überhaupt eine Auswahl stattgefunden hat. Dazu wird der Wert der SelectedIndex-Eigenschaft abgerufen. Dieser Wert lautet "-1", bis der Benutzer ein Element auswählt. Anschließend wird das SelectedItem-Objekt abgerufen, und die zugehörige Text-Eigenschaft wird angezeigt.

    Protected Sub Button1_Click(ByVal sender As System.Object, _
            ByVal e As System.EventArgs) Handles Button1.Click
       ' Is anything selected? The index is -1 if nothing is selected.
       If RadioButtonList1.SelectedIndex > -1 Then
          Label1.Text="You chose: " & RadioButtonList1.SelectedItem.Text
       End If
    End Sub
    
    Protected void Button1_Click (object sender, System.EventArgs e)
    {
       // Is anything selected? The index is -1 if nothing is selected.
       if (RadioButtonList1.SelectedIndex > -1) {
          Label1.Text="You chose: " + 
              RadioButtonList1.SelectedItem.Text;
       }
    }
    

Wenn das Listensteuerelement Mehrfachauswahlen unterstützt, muss das Steuerelement durchlaufen und auf jedes ausgewählte Element einzeln überprüft werden.

So bestimmen Sie die Auswahl in einem Listensteuerelement, das Mehrfachauswahlen unterstützt

  • Durchlaufen Sie die Items-Auflistung des Steuerelements, und überprüfen Sie die Selected-Eigenschaft der einzelnen Elemente.

    Das folgende Beispiel zeigt, wie Sie die Auswahlen in einem für Mehrfachauswahlen konzipierten ListBox-Steuerelement mit dem Namen ListBox1 überprüfen können. Die Liste der ausgewählten Elemente wird vom Code in einem Bezeichnungsfeld ausgegeben.

    Protected Sub Button1_Click(ByVal sender As System.Object, _
           ByVal e As System.EventArgs) Handles Button1.Click
       Dim msg As String
       Dim li As ListItem
       msg = ""
       For Each li In ListBox1.Items
          If li.Selected = True Then
              msg = msg & "<br>" & li.Text & " selected."
          End If
       Next
       Label1.Text = msg
    End Sub
    
    Protected void Button1_Click(object sender, System.EventArgs e)
    {
       string msg = "" ;
       foreach(ListItem li in ListBox1.Items)
       {
          if(li.Selected == true)
             {
                msg += "<BR>" + li.Text + " is selected.";
             }
       }
       Label1.Text = msg;
    }
    

Siehe auch

Referenz

Übersicht über die CheckBox-Webserversteuerelemente und CheckBoxList-Webserversteuerelemente

Übersicht über das DropDownList-Webserversteuerelement

Übersicht über das ListBox-Webserversteuerelement

Übersicht über die RadioButton- und RadioButtonList-Webserversteuerelemente