How to: Disable Specific Items in CheckedListBoxControl via Event
- 2 minutes to read
The following example shows how to disable specific items in a checked list box control via the BaseCheckedListBoxControl.GetItemEnabled event.
Assume that a CheckedListBoxControl is bound to a BindingSource object containinig information on products. The data source contains a ProductName and Discontinued fields. The values of the ProductName field are displayed in the control. The values of the Discontinued field are used to decide whether a corresponding check item should be disabled.
The result is displayed below:
using DevExpress.XtraEditors;
using DevExpress.XtraEditors.Controls;
// Assign a data source to the checked list box.
checkedListBoxControl1.DataSource = productsBindingSource;
checkedListBoxControl1.DisplayMember = "ProductName";
// Disable the items that have the Discontinued field set to true
private void checkedListBoxControl1_GetItemEnabled(object sender, GetItemEnabledEventArgs e) {
CheckedListBoxControl control = sender as CheckedListBoxControl;
bool isDiscontinued = (bool)((control.DataSource as BindingSource)[e.Index] as
DataRowView)["Discontinued"];
if (isDiscontinued)
e.Enabled = false;
}