.NET 見鬼難用的 CheckedListBox

一點都不直覺的一個Windows Form Control

CheckedListBox 這個 windows form control其實跟 ListBox 很像,唯一的差別在於 CheckedListBox 在每一個 item 之前都有一個 checkbox 可以勾選,照常理/直覺來看,這兩個 windows form control 的使用方式應該差不多,可是在做 select 與 check 處理上卻有很大的差別。(喵的咧...)

設定 checked / uncheched

checkedListBox1.SetItemCheckState(i, CheckState.Unchecked);

checkedListBox1.SetItemCheckState(i, CheckState.Checked);

checkedListBox1.SetItemChecked(i, boolean);

設定選取(selected)

checkedListBox1.SetItemSelected(i, boolean);

取得 text of checked items

checkedListBox1.GetItemText(checkedListBox1.CheckedItems[i]);

是否 checked?

checkedListBox1.GetItemChecked(i);   //return true or false

checkedListBox1.GetItemCheckState(i);   //return value is in {CheckState.Checked, CheckState.Unchecked, CheckState.Indeterminate}

是否選取(selected)

checkedListBox1.GetSelected(i);   //return true or false