CheckedListBox.CheckedIndexCollection 类

定义

封装 CheckedListBox 中选中的项(包括处于不确定状态的项)的索引集合。

public: ref class CheckedListBox::CheckedIndexCollection : System::Collections::IList
public class CheckedListBox.CheckedIndexCollection : System.Collections.IList
type CheckedListBox.CheckedIndexCollection = class
    interface IList
    interface ICollection
    interface IEnumerable
Public Class CheckedListBox.CheckedIndexCollection
Implements IList
继承
CheckedListBox.CheckedIndexCollection
实现

示例

以下示例枚举选中的项 CheckedListBox.CheckedIndexCollection ,以查看项处于哪个检查状态。 该示例演示如何使用 GetItemCheckState 该方法设置项的检查状态。 该示例还演示了如何使用 CheckedIndices 属性来获取 CheckedListBox.CheckedIndexCollection,以及 CheckedItems 用于获取的属性 CheckedListBox.CheckedItemCollection

第一个循环使用 GetItemCheckState 该方法获取 CheckState 每个已检查项(给定项的索引)。 第二个循环也使用 GetItemCheckState,但使用该 ListBox.ObjectCollection.IndexOf 方法检索项的索引。

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.
    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() + ".");
    }
}
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

注解

选中的索引集合是控件中所有项的集合中的 CheckedListBox 索引子集。 这些索引指定处于选中状态或不确定状态的项。

下表是控件中项的索引集合的示例, (控件中包含的所有项) 。

索引 Item 检查状态
0 对象 1 Unchecked
1 对象 2 Checked
2 对象 3 Unchecked
3 对象 4 Indeterminate
4 对象 5 Checked

根据前面的示例,下表显示了已检查项索引的索引集合。

索引 项索引
0 1
1 3
2 4

CheckedListBox 类具有两个成员,可用于访问存储的索引、 Item[] 属性和 IndexOf 方法。

根据前面的示例,对 Item[] 参数值为 1 的属性的调用返回值 3。 使用参数 3 调用 IndexOf 将返回值 1。

属性

Count

获取选中项数。

IsReadOnly

获取一个值,该值指示集合是否为只读。

Item[Int32]

获取 CheckedListBox 控件中某选中项的索引。

方法

Contains(Int32)

确定指定索引是否位于集合中。

CopyTo(Array, Int32)

将整个集合复制到现有数组中,从该数组内的指定位置开始复制。

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetEnumerator()

返回一个可用于循环访问 CheckedIndices 集合的枚举数。

GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
IndexOf(Int32)

返回选中索引集合中的一个索引。

MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ToString()

返回表示当前对象的字符串。

(继承自 Object)

显式接口实现

ICollection.IsSynchronized

获取一个值,该值指示是否同步对 CheckedListBox.CheckedIndexCollection 的访问(线程安全)。

ICollection.SyncRoot

获取可用于同步控件集合访问的对象。 有关此成员的说明,请参见 SyncRoot

IList.Add(Object)

此 API 支持产品基础结构,不能在代码中直接使用。

将某项添加到 CheckedListBox.CheckedIndexCollection 中。 有关此成员的说明,请参见 Add(Object)

IList.Clear()

CheckedListBox.CheckedIndexCollection 中移除所有项。 有关此成员的说明,请参见 Clear()

IList.Contains(Object)

确定指定索引是否位于 CheckedListBox.CheckedIndexCollection 内。 有关此成员的说明,请参见 Contains(Object)

IList.IndexOf(Object)

有关此成员的说明,请参见 IndexOf(Object)

IList.Insert(Int32, Object)

有关此成员的说明,请参见 Insert(Int32, Object)

IList.IsFixedSize

有关此成员的说明,请参见 IsFixedSize

IList.Item[Int32]

有关此成员的说明,请参见 Item[Int32]

IList.Remove(Object)

有关此成员的说明,请参见 Remove(Object)

IList.RemoveAt(Int32)

或者此成员的说明(请参见 RemoveAt(Int32))。

扩展方法

Cast<TResult>(IEnumerable)

IEnumerable 的元素强制转换为指定的类型。

OfType<TResult>(IEnumerable)

根据指定类型筛选 IEnumerable 的元素。

AsParallel(IEnumerable)

启用查询的并行化。

AsQueryable(IEnumerable)

IEnumerable 转换为 IQueryable

适用于

另请参阅