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


Практическое руководство. Определение выбранного элемента в списочных серверных веб-элементах управления

Обновлен: Ноябрь 2007

Информация в этом разделе применима к следующим серверным веб-элементам управления: ListBox, DropDownList, CheckBoxList и RadioButtonList.

Одной из типичных задач при работе со списочными серверными веб-элементами управления является определение элемента, выбранного пользователем. Процедура зависит от того, поддерживает ли списочный элемент управления множественный или одиночный выбор.

Следующая процедура используется для элементов управления DropDownList, RadioButtonList, а также элемента управления ListBox c с одиночным выбором.

Определение выбранного элемента в списочном элементе управления с одиночным выбором

  • Используйте один из следующих методов:

    • Для получения значения индекса выбранного элемента следует считать значение свойства SelectedIndex. Индексация начинается с нуля. Если ни один элемент не выделен, свойство будет иметь значение –1.

    • Для получения содержимого выбранного элемента следует считать значение свойства SelectedItem элемента управления. Это свойство возвращает объект типа ListItem. Содержимое выбранного элемента можно получить, считав значение свойства Text или Value этого объекта.

      a5kfekd2.alert_security(ru-ru,VS.90).gifПримечание о безопасности.

      Элементы управления на странице веб-форм могут содержать потенциально вредоносный клиентский сценарий. По умолчанию страница веб-форм проверяет введенные пользователем данные на наличие сценариев или элементов HTML. Дополнительные сведения см. в разделе Практическое руководство. Защита от использования сценариев в веб-приложениях с помощью применения кодирования HTML к строкам.

    В следующем примере демонстрируется определение выбранного элемента в элементе управления RadioButtonList. Сначала код проверяет, сделан ли выбор вообще. Для этого считывается значение свойства SelectedIndex; оно будет равно –1, если пользователь пока не выбрал элемент. После этого код получает объект SelectedItem и отображает свойство Text этого объекта.

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

Если списочный элемент управления поддерживает множественный выбор, необходимо просмотреть все элементы списка, проверяя, выбран ли очередной элемент.

Определение выбранных элементов в списочном элементе управления с множественным выбором

  • Пройдите в цикле по коллекции Items элемента управления и проверьте свойство Selected у каждого элемента.

    В следующем примере кода демонстрируется проверка выбора элементов в элементе управления ListBox с именем ListBox1, поддерживающем множественный выбор. Список выбранных элементов отображается в тексте подписи.

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

См. также

Ссылки

Общие сведения о серверных веб-элементах управления CheckBox и CheckBoxList

Общие сведения о серверном веб-элементе управления DropDownList

Общие сведения о серверном веб-элементе управления ListBox

Общие сведения о серверных веб-элементах управления RadioButton и RadioButtonList