4

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

            }

        }
    }
4

1 回答 1

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

于 2013-04-14T10:29:25.487 回答