방법: Windows Forms CheckedListBox 컨트롤에서 선택한 항목 확인
Windows Forms CheckedListBox 컨트롤에서 데이터를 표시할 때 CheckedItems 속성에 저장된 컬렉션을 반복하거나 GetItemChecked 메서드를 사용하여 목록을 단계별로 실행하여 검사할 항목을 확인할 수 있습니다. GetItemChecked 메서드는 항목 인덱스 번호를 인수로 사용하여 true
또는 false
를 반환합니다. 예상과 달리 SelectedItems 및 SelectedIndices 속성은 어떤 항목이 선택되는지는 결정하지 않으며, 어떤 항목이 강조 표시되는지를 결정합니다.
CheckedListBox 컨트롤에서 확인된 항목을 확인하려면
CheckedItems 컬렉션이 0부터 시작하므로, 0부터 해당 컬렉션을 반복합니다. 이 메서드는 전체 목록이 아니라 확인된 항목 목록의 항목 번호를 제공합니다. 따라서 목록의 첫 번째 항목을 확인하지 않고 두 번째 항목을 확인하면 아래 코드에 “Checked Item 1 = MyListItem2”와 같은 텍스트가 표시됩니다.
' Determine if there are any items checked. If CheckedListBox1.CheckedItems.Count <> 0 Then ' If so, loop through all checked items and print results. Dim x As Integer Dim s As String = "" For x = 0 To CheckedListBox1.CheckedItems.Count - 1 s = s & "Checked Item " & (x + 1).ToString & " = " & CheckedListBox1.CheckedItems(x).ToString & ControlChars.CrLf Next x MessageBox.Show(s) End If
// Determine if there are any items checked. if(checkedListBox1.CheckedItems.Count != 0) { // If so, loop through all checked items and print results. string s = ""; for(int x = 0; x < checkedListBox1.CheckedItems.Count ; x++) { s = s + "Checked Item " + (x+1).ToString() + " = " + checkedListBox1.CheckedItems[x].ToString() + "\n"; } MessageBox.Show(s); }
// Determine if there are any items checked. if(checkedListBox1->CheckedItems->Count != 0) { // If so, loop through all checked items and print results. String ^ s = ""; for(int x = 0; x < checkedListBox1->CheckedItems->Count; x++) { s = String::Concat(s, "Checked Item ", (x+1).ToString(), " = ", checkedListBox1->CheckedItems[x]->ToString(), "\n"); } MessageBox::Show(s); }
- 또는
Items 컬렉션이 0부터 시작하므로 해당 컬렉션을 0부터 단계별로 실행하고 각 항목에 대한 GetItemChecked 메서드를 호출합니다. 이 메서드는 전체 목록의 항목 번호를 제공하므로 목록의 첫 번째 항목을 확인하지 않고 두 번째 항목을 확인하면 “Item 2 = MyListItem2”와 같은 텍스트가 표시됩니다.
Dim i As Integer Dim s As String s = "Checked Items:" & ControlChars.CrLf For i = 0 To (CheckedListBox1.Items.Count - 1) If CheckedListBox1.GetItemChecked(i) = True Then s = s & "Item " & (i + 1).ToString & " = " & CheckedListBox1.Items(i).ToString & ControlChars.CrLf End If Next MessageBox.Show(s)
int i; string s; s = "Checked items:\n" ; for (i = 0; i <= (checkedListBox1.Items.Count-1); i++) { if (checkedListBox1.GetItemChecked(i)) { s = s + "Item " + (i+1).ToString() + " = " + checkedListBox1.Items[i].ToString() + "\n"; } } MessageBox.Show (s);
int i; String ^ s; s = "Checked items:\n" ; for (i = 0; i <= (checkedListBox1->Items->Count-1); i++) { if (checkedListBox1->GetItemChecked(i)) { s = String::Concat(s, "Item ", (i+1).ToString(), " = ", checkedListBox1->Item[i]->ToString(), "\n"); } } MessageBox::Show(s);
참고 항목
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET Desktop feedback