我有一个这样的CheckBoxList:
<asp:CheckBoxList ID="CBLGold" runat="server" CssClass="cbl"> <asp:ListItem Value="TGJU"> TG </asp:ListItem> <asp:ListItem Value="GOLDOZ"> Gold </asp:ListItem> <asp:ListItem Value="SILVEROZ"> Silver </asp:ListItem> <asp:ListItem Value="NERKH"> NE </asp:ListItem> <asp:ListItem Value="TALA"> Tala </asp:ListItem> <asp:ListItem Value="YARAN"> Sekeh </asp:ListItem> </asp:CheckBoxList>
现在,我想使用foreach从此CheckBoxList中获取所选项目的值,并将其放入列表中。
请注意,我希望代码简短。
List<ListItem> selected = CBLGold.Items.Cast<ListItem>() .Where(li => li.Selected) .ToList();
或简单地foreach:
foreach
List<ListItem> selected = new List<ListItem>(); foreach (ListItem item in CBLGold.Items) if (item.Selected) selected.Add(item);
如果您只想要ListItem.Value:
ListItem.Value
List<string> selectedValues = CBLGold.Items.Cast<ListItem>() .Where(li => li.Selected) .Select(li => li.Value) .ToList();