获取以编程方式绑定的复选框列表的所有值

本文关键字:列表 复选框 获取 编程 方式 绑定 | 更新日期: 2023-09-27 18:28:12

我有一个复选框列表,它以编程方式绑定到DataValueField"Id"DataTextField"Speciality". 的数据源

目的是让用户检查至少一个speciality(或多个),然后将其ID保存到数据库中。

问题是,如果用户检查了多个IDs,那么系统只会选择其中一个。

如何获取选中复选框的所有ID?我正在使用LINQ2SQL

获取以编程方式绑定的复选框列表的所有值

是否使用SelectedItems查找选中的?这不是你想要的。您应该使用Items属性并使用LINQ表达式对其进行循环以查找选中的项。

var Values = CheckBoxList.Items
        .Cast<ListItem>()
        .Where(l => l.Selected)
        .Select(i => int.parse(i.Value));

也许是这样的:

int temp=0;
var checkIds= yourCheckBoxList.Items.Cast<ListItem>()
        .Where (li =>li.Selected && int.TryParse(li.Value,out temp))
        .Select (s=>temp);