如何从数据库中检索Checkedlistbox值

时间:2018-10-15 05:32:21

标签: c# winforms datagridview checkedlistbox

当我单击C#中的“修改”按钮时,我需要将数据从datagridview获取到清单列表框。

在插入操作期间,数据将已经存储在数据库中,而更新时我需要将数据从数据库中提取到checkedlistbox,并且应该对数据进行检查。

数据库中的数据应与清单列表中的数据进行比较,如果两者均相等,则应进行检查。

string category = dgEntry.CurrentRow.Cells[8].Value.ToString();
string[] strCat = category.Split(',');
int length = strCat.Length;
for (int i = 0; i < length ; i++)
{
    string fetch = strCat[i];
    foreach (object item in clbEntry_IndividualItems.Items)
    {
        DataRowView row = item as DataRowView;
        if (row[0].ToString() == strCat[i].ToString())
        {
            clbEntry_IndividualItems.SetItemChecked(i, true);
        }
    }
}

请帮助我解决此问题。

1 个答案:

答案 0 :(得分:0)

如果您的第一次检查是正确的(作为您的评论),则可以添加第二个循环来检查所有内容:

  string category = dgEntry.CurrentRow.Cells[8].Value.ToString();
    string[] strCat = category.Split(',');
    int length = strCat.Length;
    int _lenghth =clbEntry_IndividualItems.Items.count();
    for (int j=0, j<_lenghth ,j++){
    for (int i = 0; i < length ; i++)
    {
        string fetch = strCat[i];
        foreach (object item in clbEntry_IndividualItems.Items)
        {
            DataRowView row = item as DataRowView;
            if (row[j].ToString() == strCat[i].ToString())
            {
                clbEntry_IndividualItems.SetItemChecked(i, true);
            }
        }
    }
    }