Programmatically selecting items in winforms checkboxlist
-
26-09-2019 - |
Question
I can't figure out how to programmatically select items in checkboxlist.
This method of cource doesn't compile, but I want to show you what a result I want to get.
public ColumnsSelector(Dictionary<string, bool> dataPropertyNames)
: this()
{
foreach (var item in dataPropertyNames)
{
checkedListBox1.Items.Add(item.Key);
checkedListBox1.Items[checkedListBox1.Items.IndexOf(item.Key)].Checked = item.Value;
}
}
How do you force with this problem?
Solution
Use CheckedListBox.SetItemCheckState:
checkedListBox.SetItemCheckState(checkedListBox1.Items.Count - 1, CheckedState.Checked);
which works for checked, unchecked, and indeterminate. You can also use CheckedListBox.SetItemChecked:
checkedListBox.SetItemChecked(checkedListBox1.Items.Count - 1, true);
OTHER TIPS
checkedListBox1.Items.Add(item.Key);
checkedListBox1.SetItemChecked(checkedListBox1.Items.Count - 1, item.Value);
or just
checkedListBox1.Items.Add(item.Key, item.Value);
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow