Nie mogę znaleźć sposobu na zaznaczenie wielu elementów w liście profili ASP.NET w kodzie? Czy to coś musi być zrobione w JavaScript?Jak ustawić wiele wyborów w listingu programu ASP.NET?
9
A
Odpowiedz
6
jest to kod VB to zrobić ...
myListBox.SelectionMode = Multiple
For each i as listBoxItem in myListBox.Items
if i.Value = WantedValue Then
i.Selected = true
end if
Next
12
Oto próbka C#
(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>
(Code Behind)
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;
}
}
}
11
Trzeba będzie użyć metody FindByValue z ListBox
foreach (string selectedValue in SelectedValuesArray)
{
lstBranch.Items.FindByValue(selectedValue).Selected = true;
}
0
Lubię gdzie bill berlington się dzieje z jego rozwiązania. Nie chcę iterować poprzez ListBox.Items dla każdego elementu w mojej tablicy. Oto moje rozwiązanie:
foreach (int index in indicesIntArray)
{
applicationListBox.Items[index].Selected = true;
}
1
W języku C#:
foreach (ListItem item in ListBox1.Items)
{
item.Attributes.Add("selected", "selected");
}
+1 jest to najlepsza opcja moim zdaniem, ponieważ tylko iteracji potrzebnych elementów, a nie całej kolekcji listbox. Użyłem go w moim własnym rozwiązaniu, dzięki Phu! –