Вопрос по asp.net – Как установить несколько вариантов выбора в ASP.NET ListBox?

9

Я не могу найти способ выделить несколько элементов в ASP.NET ListBox в приведенном ниже коде? Это что-то должно быть сделано в Javascript?

Ваш Ответ

5   ответов
1

foreach (ListItem item in ListBox1.Items)
{
    item.Attributes.Add("selected", "selected");
}
13

(ASPX)

<form id="form1" runat="server">
        <asp:ListBox ID="ListBox1" runat="server" >
            <asp:ListItem Value="Red" />
            <asp:ListItem Value="Blue" />
            <asp:ListItem Value="Green" />
        </asp:ListBox>
        <asp:Button ID="Button1" 
                    runat="server" 
                    onclick="Button1_Click" 
                    Text="Select Blue and Green" />
</form>

(Код сзади)

protected void Button1_Click(object sender, EventArgs e)
{
     ListBox1.SelectionMode = ListSelectionMode.Multiple;            
     foreach (ListItem item in ListBox1.Items)
     {
          if (item.Value == "Blue" || item.Value == "Green")
          {
               item.Selected = true;
          }
     }
}
7

myListBox.SelectionMode = Multiple
For each i as listBoxItem in myListBox.Items
  if i.Value = WantedValue Then
      i.Selected = true
  end if 
Next
12

foreach (string selectedValue in SelectedValuesArray)
                    {
                        lstBranch.Items.FindByValue(selectedValue).Selected = true;
                    }
+1 это лучший вариант, на мой взгляд, потому что он перебирает только нужные элементы, а не всю коллекцию списков. Я использовал это в своем собственном решении, спасибо Фу!
0

Билл Берлингтон идет со своим решением. Я не хочу перебирать элементы ListBox.Items для каждого элемента в моем массиве. Вот мое решение:

foreach (int index in indicesIntArray)
{
    applicationListBox.Items[index].Selected = true;
}

Похожие вопросы