다음을 통해 공유


CheckedListBox.CheckedItemCollection 클래스

비활성화된 항목을 포함하여 CheckedListBox 컨트롤에서 선택한 항목의 컬렉션을 캡슐화합니다.

네임스페이스: System.Windows.Forms
어셈블리: System.Windows.Forms(system.windows.forms.dll)

구문

‘선언
Public Class CheckedItemCollection
    Implements IList, ICollection, IEnumerable
‘사용 방법
Dim instance As CheckedItemCollection
public class CheckedItemCollection : IList, ICollection, IEnumerable
public ref class CheckedItemCollection : IList, ICollection, IEnumerable
public class CheckedItemCollection implements IList, ICollection, 
    IEnumerable
public class CheckedItemCollection implements IList, ICollection, 
    IEnumerable

설명

선택한 항목 컬렉션은 CheckedListBox 컨트롤에 있는 모든 항목의 하위 집합으로 선택한 상태나 비활성화된 상태의 항목만 포함됩니다.

다음은 컨트롤에 있는 항목의 인덱싱된 컬렉션(컨트롤에 포함된 모든 항목)에 대한 예입니다.

인덱스

항목

선택 상태

0

object 1

Unchecked

1

object 2

Checked

2

object 3

Unchecked

3

object 4

Indeterminate

4

object 5

Checked

다음은 앞의 예제를 기본으로 하며 선택한 항목의 인덱싱된 컬렉션을 보여 줍니다.

인덱스

항목

0

object 2

1

object 4

2

object 5

CheckedListBox 클래스에는 저장된 인덱스에 액세스할 수 있도록 하는 두 개의 멤버인 Item 속성과 IndexOf 메서드가 있습니다.

앞의 예제에서 매개 변수 값을 1로 지정하여 Item 속성을 호출하면 object 4가 반환되며 매개 변수 값을 object 4로 지정하여 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.CheckedItemCollection

스레드로부터의 안전성

이 형식의 모든 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.CheckedItemCollection 멤버
System.Windows.Forms 네임스페이스