在WinForms中迭代CheckedListBox?

eom*_*off 4 c# iteration checkedlistbox winforms

如果我在Win表单中有Checked列表框,我填写如下

List<Tasks> tasks = db.GetAllTasks();
        foreach (var t in tasks)
            tasksCheckedListBox.Items.Add(t.Name);
Run Code Online (Sandbox Code Playgroud)

如何迭代tasksCheckedListBox.Items并将一些复选框设置为已选中?

谢谢

Jak*_*son 6

add方法采用可选的IsChecked参数.然后,您可以将对象以正确的状态添加到选中的列表框中.

List<Tasks> tasks = db.GetAllTasks();
        foreach (var t in tasks)
            tasksCheckedListBox.Items.Add(t.Name, isChecked);
Run Code Online (Sandbox Code Playgroud)

或者,您可以在使用以下内容添加项目后更改项目的已检查状态:

foreach(var task in tasks)
{
    tasksCheckedListBox.SetItemChecked(clb.Items.IndexOf(task), isChecked);
}
Run Code Online (Sandbox Code Playgroud)