如何在ASP.NET ListBox中设置多个选择?

时间:2009-07-01 21:09:28

标签: asp.net listbox

我找不到在后面的代码中选择ASP.NET ListBox中的多个项目的方法?这是否需要在Javascript中完成?

5 个答案:

答案 0 :(得分:13)

这是一个C#样本


(VB)

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

答案 1 :(得分:13)

您必须使用ListBox的FindByValue方法

foreach (string selectedValue in SelectedValuesArray)
                    {
                        lstBranch.Items.FindByValue(selectedValue).Selected = true;
                    }

答案 2 :(得分:7)

这是要执行此操作的VB代码...

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

答案 3 :(得分:1)

在C#中:

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

答案 4 :(得分:0)

我喜欢bill berlington的解决方案。我不想为我的数组中的每个项迭代ListBox.Items。这是我的解决方案:

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