如何在checkboxlist中找到所选项目从数据库绑定

时间:2013-04-14 10:03:57

标签: c# asp.net database binding checkboxlist

我在查找复选框列表中的选中项目时遇到问题。实际上,复选框列表的列表项是从数据库加载的。但是通过使用下面的代码,我无法在列表中找到已检查的项目,并且项目始终返回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 + ",";

            }

        }
    }

1 个答案:

答案 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命名空间。