CheckedListBox.SetItemCheckState(Int32, CheckState) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает состояние пометки элемента с указанным индексом.
public:
void SetItemCheckState(int index, System::Windows::Forms::CheckState value);
public void SetItemCheckState (int index, System.Windows.Forms.CheckState value);
member this.SetItemCheckState : int * System.Windows.Forms.CheckState -> unit
Public Sub SetItemCheckState (index As Integer, value As CheckState)
Параметры
- index
- Int32
Индекс элемента, для которого требуется задать его состояние.
- value
- CheckState
Одно из значений перечисления CheckState.
Исключения
Задаваемое значение параметра index
меньше нуля.
-или-
Значение параметра index
больше или равно количеству элементов в списке.
Значение value
не равно ни одному из значений объекта CheckState.
Примеры
В следующем примере перечисляются элементы в CheckedListBox и проверяются все остальные элементы в списке. В примере демонстрируется использование SetItemCheckState методов и SetItemChecked для задания состояния проверка элемента. Для каждого другого проверяемого элемента вызывается, SetItemCheckState чтобы задать для значение CheckStateIndeterminate
, а SetItemChecked для другого элемента вызывается , чтобы установить для состояния флажка Checked
значение .
В примере также показано использование Items свойства для получения CheckedListBox.ObjectCollection элемента Count .
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 );
else
checkedListBox1->SetItemChecked( i, true );
}
}
insideCheckEveryOther = false;
}
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);
else
checkedListBox1.SetItemChecked(i, true);
}
}
insideCheckEveryOther = false;
}
Private Sub CheckEveryOther_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckEveryOther.Click
' Cycle through every item and check every other.
Dim i As Integer
' Set flag to true to know when this code is being executed. Used in the ItemCheck
' event handler.
insideCheckEveryOther = True
For i = 0 To CheckedListBox1.Items.Count - 1
' For every other item in the list, set as checked.
If ((i Mod 2) = 0) Then
' But for each other item that is to be checked, set as being in an
' indeterminate checked state.
If ((i Mod 4) = 0) Then
CheckedListBox1.SetItemCheckState(i, CheckState.Indeterminate)
Else
CheckedListBox1.SetItemChecked(i, True)
End If
End If
Next
insideCheckEveryOther = False
End Sub
Комментарии
Метод SetItemCheckState вызывает событие ItemCheck.
Элементы, для которых CheckState задано значение Indeterminate
, отображаются с проверка меткой в поле проверка, но поле имеет серый цвет, чтобы указать неопределенное состояние отмеченного элемента.