次の方法で共有


方法: Windows フォーム CheckedListBox コントロールでチェックされた項目を確認する

Windows フォーム CheckedListBox コントロールでデータを表示する場合は、 CheckedItems プロパティに格納されているコレクションを反復処理するか、 GetItemChecked メソッドを使用してリストをステップ実行して、チェックされる項目を決定できます。 GetItemChecked メソッドは、引数として項目インデックス番号を受け取り、trueまたはfalseを返します。 SelectedItemsプロパティと SelectedIndices プロパティでは、どの項目がチェックされるかは決めず、どの項目が強調表示されるかが決まります。

CheckedListBox コントロールでチェックされた項目を確認するには

  1. コレクションが 0 から始まるため、 CheckedItems コレクションを反復処理します。 このメソッドは、チェックされた項目のリスト内のアイテム番号を提供し、全体のリストには表示されないことに注意してください。 したがって、リスト内の最初の項目がチェックされておらず、2 番目の項目がチェックされている場合、次のコードは "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);
    }
    
    • または
  2. コレクションがゼロ基点であるため、Items コレクションを0から反復し、各項目に対して GetItemChecked メソッドを呼び出します。 このメソッドでは、リスト全体のアイテム番号が表示されるため、リスト内の最初の項目がチェックされず、2 番目の項目がチェックされている場合は、"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);
    

こちらも参照ください