【发布时间】:2011-10-02 05:01:12
【问题描述】:
我尝试检查 ASP.NET CheckboxList 中的多个值,但我不能。
我写了:
chkApplications.SelectedValue = 2;
chkApplications.SelectedValue = 6;
但它只选择值为“6”的项目
怎么了?
【问题讨论】:
标签: c# asp.net checkboxlist
我尝试检查 ASP.NET CheckboxList 中的多个值,但我不能。
我写了:
chkApplications.SelectedValue = 2;
chkApplications.SelectedValue = 6;
但它只选择值为“6”的项目
怎么了?
【问题讨论】:
标签: c# asp.net checkboxlist
最适合您的技术如下:
chkApplications.Items.FindByValue("2").Selected = true;
chkApplications.Items.FindByValue("6").Selected = true;
或者你可以简单地这样做......
foreach (ListItem item in chkApplications.Items)
{
if (item.Value == "2" || item.Value == "6")
{
item.Selected = true;
}
}
【讨论】:
FindByValue 时,还需要迭代整个集合一次。
foreach (var item in cb.Items.Cast<ListItem>()
.Where (li => li.Value == "2" || li.Value == "6"))
item.Selected = true;
【讨论】:
您可以将值放入列表 (MyList),并使用 FindByValue 进行检查。
foreach (var item in MyList)
{
checkBoxList.Items.FindByValue(item.id).Selected = true;
}
【讨论】:
与其尝试通过chkApplications.SelectedValue选择项目,不如尝试
chkApplications.Items.Item(2).Selected = True
chkApplications.Items.Item(6).Selected = True
【讨论】: