CheckedListBox.CheckedIndexCollection 클래스
상태가 결정되지 않은 항목을 포함하여 CheckedListBox에서 선택한 항목의 인덱스 컬렉션을 캡슐화합니다.
네임스페이스: System.Windows.Forms
어셈블리: System.Windows.Forms(system.windows.forms.dll)
구문
‘선언
Public Class CheckedIndexCollection
Implements IList, ICollection, IEnumerable
‘사용 방법
Dim instance As CheckedIndexCollection
public class CheckedIndexCollection : IList, ICollection, IEnumerable
public ref class CheckedIndexCollection : IList, ICollection, IEnumerable
public class CheckedIndexCollection implements IList, ICollection,
IEnumerable
public class CheckedIndexCollection implements IList, ICollection,
IEnumerable
설명
선택한 인덱스 컬렉션은 CheckedListBox 컨트롤에 있는 모든 항목의 컬렉션에 포함된 인덱스 하위 집합입니다. 이런 인덱스는 선택한 상태 또는 결정되지 않은 상태의 항목을 지정합니다.
다음은 컨트롤에 있는 항목의 인덱싱된 컬렉션(컨트롤에 포함된 모든 항목)에 대한 예입니다.
인덱스 |
항목 |
선택 상태 |
---|---|---|
0 |
object 1 |
|
1 |
object 2 |
|
2 |
object 3 |
Unchecked |
3 |
object 4 |
|
4 |
object 5 |
Checked |
다음 표에서는 앞의 예제를 기본으로 하여 선택한 항목 인덱스의 인덱싱된 컬렉션을 보여 줍니다.
인덱스 |
항목 인덱스 |
---|---|
0 |
1 |
1 |
3 |
2 |
4 |
CheckedListBox 클래스에는 저장된 인덱스에 액세스할 수 있도록 하는 두 개의 멤버인 Item 속성과 IndexOf 메서드가 있습니다.
앞의 예제에서 매개 변수 값을 1로 지정하여 Item 속성을 호출하면 값 3이 반환되며 매개 변수 값을 3으로 지정하여 IndexOf를 호출하면 값 1이 반환됩니다.
예제
다음 예제에서는 항목의 선택 상태를 확인할 수 있도록 CheckedListBox.CheckedIndexCollection의 선택된 항목을 열거합니다. 이 예제에서는 GetItemCheckState 메서드를 사용하여 항목의 선택 상태를 설정하는 방법을 보여 줍니다. 또한 다음 예제에서는 CheckedIndices 속성을 사용하여 CheckedListBox.CheckedIndexCollection을 얻고 CheckedItems 속성을 사용하여 CheckedListBox.CheckedItemCollection을 얻는 방법을 보여 줍니다.
항목 인덱스가 주어지면 첫 루프에서는 GetItemCheckState 메서드를 사용하여 선택한 각 항목의 CheckState를 얻습니다. 두 번째 루프도 GetItemCheckState를 사용하지만 ListBox.ObjectCollection.IndexOf 메서드를 사용하여 인덱스에서 항목을 검색합니다.
Private Sub WhatIsChecked_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles WhatIsChecked.Click
' Display in a message box all the items that are checked.
Dim indexChecked As Integer
Dim itemChecked As Object
Const quote As String = """"
' First show the index and check state of all selected items.
For Each indexChecked In CheckedListBox1.CheckedIndices
' The indexChecked variable contains the index of the item.
MessageBox.Show("Index#: " + indexChecked.ToString() + ", is checked. Checked state is:" + _
CheckedListBox1.GetItemCheckState(indexChecked).ToString() + ".")
Next
' Next show the object title and check state for each item selected.
For Each itemChecked In CheckedListBox1.CheckedItems
' Use the IndexOf method to get the index of an item.
MessageBox.Show("Item with title: " + quote + itemChecked.ToString() + quote + _
", is checked. Checked state is: " + _
CheckedListBox1.GetItemCheckState(CheckedListBox1.Items.IndexOf(itemChecked)).ToString() + ".")
Next
End Sub
private void WhatIsChecked_Click(object sender, System.EventArgs e) {
// Display in a message box all the items that are checked.
// First show the index and check state of all selected items.
foreach(int indexChecked in checkedListBox1.CheckedIndices) {
// The indexChecked variable contains the index of the item.
MessageBox.Show("Index#: " + indexChecked.ToString() + ", is checked. Checked state is:" +
checkedListBox1.GetItemCheckState(indexChecked).ToString() + ".");
}
// Next show the object title and check state for each item selected.
foreach(object itemChecked in checkedListBox1.CheckedItems) {
// Use the IndexOf method to get the index of an item.
MessageBox.Show("Item with title: \"" + itemChecked.ToString() +
"\", is checked. Checked state is: " +
checkedListBox1.GetItemCheckState(checkedListBox1.Items.IndexOf(itemChecked)).ToString() + ".");
}
}
void WhatIsChecked_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
// Display in a message box all the items that are checked.
// First show the index and check state of all selected items.
IEnumerator^ myEnum1 = checkedListBox1->CheckedIndices->GetEnumerator();
while ( myEnum1->MoveNext() )
{
Int32 indexChecked = *safe_cast<Int32^>(myEnum1->Current);
// The indexChecked variable contains the index of the item.
MessageBox::Show( String::Concat( "Index#: ", indexChecked, ", is checked. Checked state is: ", checkedListBox1->GetItemCheckState( indexChecked ), "." ) );
}
// Next show the Object* title and check state for each item selected.
IEnumerator^ myEnum2 = checkedListBox1->CheckedItems->GetEnumerator();
while ( myEnum2->MoveNext() )
{
Object^ itemChecked = safe_cast<Object^>(myEnum2->Current);
// Use the IndexOf method to get the index of an item.
MessageBox::Show( String::Concat( "Item with title: \"", itemChecked, "\", is checked. Checked state is: ", checkedListBox1->GetItemCheckState( checkedListBox1->Items->IndexOf( itemChecked ) ), "." ) );
}
}
private void whatIsChecked_Click(Object sender, System.EventArgs e)
{
// Display in a message box all the items that are checked.
// First show the index and check state of all selected items.
IEnumerator objEnum = checkedListBox1.get_CheckedIndices().
GetEnumerator();
while (objEnum.MoveNext()) {
int indexChecked = (int)(Int32)(objEnum.get_Current());
// The indexChecked variable contains the index of the item.
MessageBox.Show("Index#: " + (Int32)indexChecked
+ ", is checked. Checked state is:"
+ checkedListBox1.GetItemCheckState(indexChecked).ToString()
+ ".");
}
// Next show the object title and check state for each item selected.
for (int iCtr = 0;
iCtr < checkedListBox1.get_CheckedItems().get_Count();
iCtr++) {
Object itemChecked =
checkedListBox1.get_CheckedItems().get_Item(iCtr);
// Use the IndexOf method to get the index of an item.
MessageBox.Show("Item with title: \"" + itemChecked.ToString()
+ "\", is checked. Checked state is: "
+ checkedListBox1.GetItemCheckState(
checkedListBox1.get_Items().IndexOf(itemChecked)).ToString()
+ ".");
}
} //whatIsChecked_Click
상속 계층 구조
System.Object
System.Windows.Forms.CheckedListBox.CheckedIndexCollection
스레드로부터의 안전성
이 형식의 모든 public static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 인터페이스 멤버는 스레드로부터 안전하지 않습니다.
플랫폼
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.
버전 정보
.NET Framework
2.0, 1.1, 1.0에서 지원
참고 항목
참조
CheckedListBox.CheckedIndexCollection 멤버
System.Windows.Forms 네임스페이스
CheckedListBox.CheckedIndices 속성
CheckedListBox.CheckedItems 속성
CheckedListBox.Items 속성