CheckedListBox.SetItemCheckState メソッド
指定したインデックスの位置にある項目のチェックの状態を設定します。
Public Sub SetItemCheckState( _
ByVal index As Integer, _ ByVal value As CheckState _)
[C#]
public void SetItemCheckState(intindex,CheckStatevalue);
[C++]
public: void SetItemCheckState(intindex,CheckStatevalue);
[JScript]
public function SetItemCheckState(
index : int,value : CheckState);
パラメータ
- index
状態を設定する対象となる項目のインデックス。 - value
CheckState 値の 1 つ。
例外
例外の種類 | 条件 |
---|---|
ArgumentException | 指定された index が 0 未満です。
または index が、リスト内の項目数以上の値です。 |
InvalidEnumArgumentException | value が、 CheckState 値の 1 つではありません。 |
解説
SetItemCheckState メソッドは ItemCheck イベントを発生させます。
CheckState.Indeterminate に設定された項目は、チェック ボックス内にチェック マークが付いて表示されますが、そのボックスは淡色表示になり、チェックされている項目の状態が不確定であることを示します。
使用例
[Visual Basic, C#, C++] CheckedListBox 内の項目を列挙し、リスト内の項目を 1 つおきにチェックする例を次に示します。この例では、 SetItemCheckState メソッドおよび SetItemChecked メソッドを使用して、項目のチェック状態を設定しています。チェックする項目は 1 つおきに、 SetItemCheckState が呼び出されて CheckState が Indeterminate に設定され、残りの項目については SetItemChecked が呼び出されてチェック状態が Checked に設定されます。
[Visual Basic, C#, C++] この例では、 Items プロパティを使用して CheckedListBox.ObjectCollection を取得し、次に Count を取得する方法についても示します。
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
[C#]
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;
}
[C++]
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;
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
参照
CheckedListBox クラス | CheckedListBox メンバ | System.Windows.Forms 名前空間 | CheckState