یک حلقه روی مجموعه ای که باید تیک بخورند نیاز دارید. در این مثال روی آیتمهای لیست باکس.
داخل حلقه ، توسط متد IndexOf اندیس آیتم رو در checkedListBox بدست بیارید. با متد SetItemCheckState وضعیت رو ست کنید.
private void button1_Click(object sender, EventArgs e)
{
Uncheck();
foreach (var item in listBox1.Items)
{
int index = checkedListBox1.Items.IndexOf(item);
if (index >= 0)
{
checkedListBox1.SetItemCheckState(index, CheckState.Checked);
}
}
}
private void button2_Click(object sender, EventArgs e)
{
Uncheck();
string[] names = textBox1.Text.Split(':');
if (names.Length == 0) return;
foreach (var item in names)
{
int index = checkedListBox1.Items.IndexOf(item.Trim());
if (index>=0)
{
checkedListBox1.SetItemCheckState(index, CheckState.Checked);
}
}
}
private void Uncheck()
{
for (int index = checkedListBox1.CheckedItems.Count - 1; index >= 0; index--)
{
var item = checkedListBox1.CheckedItems[index];
checkedListBox1.SetItemCheckState(checkedListBox1. Items.IndexOf(item), CheckState.Unchecked);
}
}