我在查找复选框列表中的选中项目时遇到问题。实际上,复选框列表的列表项是从数据库加载的。但是通过使用下面的代码,我无法在列表中找到已检查的项目,并且项目始终返回false。以下是我的代码有人可以帮我这个吗?
protected void GetCheckboxlist_Click(object sender, EventArgs e)
{
string s = string.Empty;
for (int i = 0; i < CheckBoxList1.Items.Count; i++)
{
if (CheckBoxList1.Items[i].Selected)
{
// List the selected items
s = s + CheckBoxList1.Items[i].Text + ",";
}
}
}
答案 0 :(得分:1)
您的代码对我来说很好,但请尝试使用Linq
;
IEnumerable<string> CheckedItems = CheckBoxList1.Items.Cast<ListItem>()
.Where(i => i.Selected)
.Select(i => i.Value);
之后,您可以添加s
字符串这些值,如;
foreach(string i in CheckedItems)
s += i + ",";
不要忘记添加System.Linq
命名空间。