我知道如何设置项目以进行检查:
checkedListBox.SetItemChecked(index, true);
但是当我打开带有int[] valueMembers
参数的表单时,我正在调用它,所以我想检查每个值=要对此参数进行检查的值。这是我尝试过的:
public NovaPoruka(int[] primalacID)
{
InitializeComponent();
foreach(CheckedListBox o in checkedListBox1.Items)
{
if(primalacID.Contains(Convert.ToInt32(o.SelectedValue)))
{
o.SetItemChecked(o.SelectedIndex, true);
}
}
}
编辑:
我没有看到我在执行此操作之前没有初始化checkedListBox
所以它没有丢失错误但是现在我做了那个我在CheckedListBox o in checkedListBox1.Items
丢了我的错误所以我做了一些改变但仍然做不知道如何获取foreach循环内的当前项的索引。这是更改的代码:
foreach(Int_String o in checkedListBox1.Items)
{
if(primalacID.Contains(Convert.ToInt32(o._int)))
{
checkedListBox1.SetItemChecked(checkedListBox1.SelectedIndex, true);
}
}
获取所选索引的当前方式会返回-1
答案 0 :(得分:0)
我做到了。这是最终代码:
for(int i = 0; i < checkedListBox1.Items.Count; i++)
{
Int_String s = checkedListBox1.Items[i] as Int_String;
if(primalacID.Contains(s._int))
{
checkedListBox1.SetItemChecked(i, true);
}
}