PDA

View Full Version : سوال: نحوه انتخاب آیتم های CheckedListBox از ListBox



BEHZADnr
سه شنبه 03 اسفند 1395, 04:39 صبح
با سلام خدمت تمام اساتید محترم

من میخوام آیتم هایی که داخل listbox هستن رو در checkedlistbox انتخاب کنم
ولی هر روشی که امتحان کردم جواب نداد ، خیلی بهش نیاز دارم

اینم عکس و فایل نمونه برای راهنمایی
144547

البته من داخل سایتهای مختلف جستجو کردم ولی هیچ کدی که اینکارو بدرستی انجام بده پیدا نکردم
کد برای انتخاب از رشته پیدا کردم ولی با یکسری از کلمات مشکل داره !!! دقیق نمیدونم مشکلش چیه
من کلمات رو هم داخل برنامه اصلی با ":" از هم جدا کردم
کد رشته هم داخل برنامه هست

از اساتید محترم خواهش میکنم اگه اطلاعی دارن راهنمایی کنن
با تشکر - نوروزی

Mahmoud.Afrad
سه شنبه 03 اسفند 1395, 19:26 عصر
یک حلقه روی مجموعه ای که باید تیک بخورند نیاز دارید. در این مثال روی آیتمهای لیست باکس.
داخل حلقه ، توسط متد 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);
}
}