如何清除从C#中的列表填充的复选框?

如何清除从C#中的列表填充的复选框?,c#,checkbox,C#,Checkbox,我有一个列表框,每个项目旁边都有一个复选框。复选框和文本字段绑定到一个列表,我根据sql查询生成它 SqlDataReader sdr = sql.ExecuteReader(); while (sdr.Read()) { _callSubjectsList.Add(new CallSubjects { SubjectId = sdr["SubjectID"].ToString(),

我有一个列表框,每个项目旁边都有一个复选框。复选框和文本字段绑定到一个列表,我根据sql查询生成它

SqlDataReader sdr = sql.ExecuteReader();
        while (sdr.Read())
        {
            _callSubjectsList.Add(new CallSubjects
            {
                SubjectId = sdr["SubjectID"].ToString(),
                Subject = sdr["Subject"].ToString(),
                Chosen = false,
            });
        }

选中的是我的复选框字段。我遇到的问题是,在选中复选框并运行保存过程之后,当我尝试循环并清除无法选中的复选框时。我不能仅仅将列表中的“selected”值设置为“false”,因为这不会导致复选框被取消选中。有没有办法像我现在这样做?除此之外,一切正常。不过,我相信有更好的方法,可以接受建议。谢谢

如果您正在使用复选框。您需要在checkbox=false中设置复选框的属性

 myCheckBox.Checked = false;

如果您正在使用复选框。您需要在checkbox=false中设置复选框的属性

 myCheckBox.Checked = false;

这个应用程序是什么类型的?Web(ASP.NET)、WinForms?此应用程序是什么类型的?Web(ASP.NET),WinForms?应为myCheckBox。Checked=false;-但是是的,考虑到我正在循环遍历结果,我如何访问该属性:foreach(SupportDesk.CallSubjects itemRow in_callSubjectsList){基于此,我一直在使用:Boolean selected=itemrrow.selected;来测试它是否被选中。因为我引用的是列表,所以没有一个checked属性,我如何基于此访问checkbox属性,或者我是否需要以某种方式循环检查复选框数组?您需要循环检查复选框数组和将Checked属性设置为false;应该是myCheckBox.Checked=false;-但是是的,考虑到我正在循环遍历结果,我如何访问该属性:foreach(SupportDesk.CallSubjects itemRow在_CallSubjects列表中){基于此,我一直在使用:Boolean selected=itemrrow.selected;来测试它是否被选中。因为我引用的是列表,所以没有一个checked属性,我如何基于此访问checkbox属性,或者我是否需要以某种方式循环检查复选框数组?您需要循环检查复选框数组和将Checked属性设置为false;