共用方式為


How to: Set the Selection in List Web Server Controls

The information in this topic applies to these Web server controls:

Normally, users select items in a list Web server control to indicate their choice. However, you might want to pre-select items or select items at run time (programmatically) based on some condition.

To set the selection in a list Web server control at design time

  1. In the Properties window, click the ellipsis button (VisualStudioEllipsesButton screenshot) for the Items property to open the ListItem Collection Editor dialog box.

  2. From the Members list, choose the member to be selected, and then set its Selected property to true.

  3. If the control is set to allow multiple selections, repeat step 2 for each item to select, and then click OK to close the dialog box.

To set a single selection in a list Web server control programmatically

  • Do one of the following:

    • Set the control's SelectedIndex property to the index value of the item to select. The index is zero-based. To set no selection, set SelectedIndex to -1.

      Note

      If you set the SelectedIndex property of a DropDownList control to -1, the control resets the value to 0, because the DropDownList control always has a list item selected.

      ' Selects the third item
      ListBox1.SelectedIndex = 2
      
      // Selects the third item
      ListBox1.SelectedIndex = 2;
      
    • Set the Selected property of an individual item in the list.

      ' Selects the item whose text is Apples
      ListBox1.Items.FindByText("Apples")
      If Not li Is Nothing Then
         li.Selected = True
      End If
      
      // Selects the item whose text is Apples
      ListItem li = ListBox1.Items.FindByText("Apples");
      if(li != null)
      {
         li.Selected = true;
      }
      

To set multiple selections in a list control programmatically

  • Loop through the control's Items collection and set the Selected property of every individual item.

    Note

    You can only select multiple items if the control's SelectionMode property is set to Multiple.

    The following example shows how you can set selections in a multi-selection ListBox control called ListBox1. The code selects every other item.

    Protected Sub Button1_Click(ByVal sender As System.Object, _
             ByVal e As System.EventArgs) Handles Button1.Click
       Dim i As Integer
       Dim li As ListItem
       For Each li In ListBox1.Items
          i += 1
          If (i Mod 2 = 0) Then
             li.Selected = True
          End If
       Next
    End Sub
    
    Protected void Button1_Click(object sender, System.EventArgs e)
    {
       // Counter
       int i = 0;
       foreach(ListItem li in ListBox1.Items)
       {
          if( (i%2) == 0)
          {
             li.Selected = true; 
          }
          i += 1;
       }
    }
    

See Also

Tasks

How to: Populate List Web Server Controls from a Data Source