This documentation is archived and is not being maintained.

CheckedListBox.SetItemChecked Method

Sets CheckState for the item at the specified index to Checked.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public void SetItemChecked(
	int index,
	bool value


Type: System.Int32
The index of the item to set the check state for.
Type: System.Boolean
true to set the item as checked; otherwise, false.


The index specified is less than zero.


The index is greater than the count of items in the list.

When a value of true is passed, this method sets the CheckState value to Checked. A value of false sets CheckState to Unchecked.

The following example enumerates the items in the CheckedListBox and checks every other item in the list. The example demonstrates using the SetItemCheckState and SetItemChecked methods to set the check state of an item. For every other item that is to be checked, SetItemCheckState is called to set the CheckState to Indeterminate, while SetItemChecked is called on the other item to set the checked state to Checked.

The example also demonstrates using the Items property to get the CheckedListBox.ObjectCollection to get the Count of items.

private void CheckEveryOther_Click(object sender, System.EventArgs e) {
    // Cycle through every item and check every other.

    // Set flag to true to know when this code is being executed. Used in the ItemCheck
    // event handler.
    insideCheckEveryOther = true;

    for (int i = 0; i < checkedListBox1.Items.Count; i++) {
        // For every other item in the list, set as checked.
        if ((i % 2) == 0) {
            // But for each other item that is to be checked, set as being in an
            // indeterminate checked state.
            if ((i % 4) == 0)
                checkedListBox1.SetItemCheckState(i, CheckState.Indeterminate);
                checkedListBox1.SetItemChecked(i, true);

    insideCheckEveryOther = false;

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.