以编程方式在CheckListBox中设置复选项

本文关键字:设置 选项 CheckListBox 编程 方式 | 更新日期: 2023-09-27 18:12:23

我试图根据一些标准在checklistbox中以编程方式设置检查项。这是代码:

int chItm = 0;
foreach (DataRowView row in chLBDatumi.Items)
 {                
     if (row["DatumGO"].ToString().Equals(myListItems[chItm].ToString()))
     {
          chLBDatumi.SetItemChecked(chItm, true);
     }
     chItm++;                
 }

但是会抛出Exception:

此枚举数绑定到的列表已被修改。一个枚举器只能在列表不变的情况下使用。

还有其他方法可以做到吗?

以编程方式在CheckListBox中设置复选项

使用for循环代替foreach:

for (int i = 0; i < chLBDatumi.Items.Count(); i++)
{                
    if (chLBDatumi.Items[i]["DatumGO"].ToString().Equals(myListItems[chItm].ToString()))
     {
         chLBDatumi.SetItemChecked(chItm, true);
     }
    chItm++;                
}