如何:在 Windows 窗体 ComboBox 控件、ListBox 控件或 CheckedListBox 控件中添加或移除项

更新:2007 年 11 月

可以以多种方式向 Windows 窗体组合框、列表框或选中列表框添加项,因为这些控件可以绑定到多种数据源。但本主题 介绍最简单的方法,该方法无需进行数据绑定。所显示的项通常为字符串;但是可使用任何对象。控件中显示的文本是对象的 ToString 方法所返回的值。

添加项

  1. 使用 ObjectCollection 类的 Add 方法向列表添加字符串或对象。使用 Items 属性引用集合:

    ComboBox1.Items.Add("Tokyo")
    
    comboBox1.Items.Add("Tokyo");
    
    comboBox1.get_Items().Add("Tokyo");
    
    comboBox1->Items->Add("Tokyo");
    

    - 或 -

  2. 使用 Insert 方法在列表中所需位置插入字符串或对象:

    CheckedListBox1.Items.Insert(0, "Copenhagen")
    
    checkedListBox1.Items.Insert(0, "Copenhagen");
    
    checkedListBox1.get_Items().Insert(0, "Copenhagen");
    
    checkedListBox1->Items->Insert(0, "Copenhagen");
    

    - 或 -

  3. 向 Items 集合分配整个数组:

    Dim ItemObject(9) As System.Object
    Dim i As Integer
       For i = 0 To 9
       ItemObject(i) = "Item" & i
    Next i
    ListBox1.Items.AddRange(ItemObject)
    
    System.Object[] ItemObject = new System.Object[10];
    for (int i = 0; i <= 9; i++)
    {
       ItemObject[i] = "Item" + i;
    }
    listBox1.Items.AddRange(ItemObject);
    
    System.Object[] ItemObject = new System.Object[10];
    for(int i=0;i <= 9;i ++)
    {
       ItemObject .set_Item( i , "Item" + i );
    }
    listBox1.get_Items().AddRange(ItemObject);
    
    Array<System::Object^>^ ItemObject = gcnew Array<System::Object^>(10);
    for (int i = 0; i <= 9; i++)
    {
       ItemObject[i] = String::Concat("Item", i.ToString());
    }
    listBox1->Items->AddRange(ItemObject);
    

移除项

  • 调用 Remove 或 RemoveAt 方法来删除项。

    Remove 有一个参数可指定要移除的项。 RemoveAt 移除具有指定的索引号的项。

    ' To remove item with index 0:
    ComboBox1.Items.RemoveAt(0)
    ' To remove currently selected item:
    ComboBox1.Items.Remove(ComboBox1.SelectedItem)
    ' To remove "Tokyo" item:
    ComboBox1.Items.Remove("Tokyo")
    
    // To remove item with index 0:
    comboBox1.Items.RemoveAt(0);
    // To remove currently selected item:
    comboBox1.Items.Remove(comboBox1.SelectedItem);
    // To remove "Tokyo" item:
    comboBox1.Items.Remove("Tokyo");
    
    // To remove item with index 0:
    comboBox1.get_Items().RemoveAt(0);
    // To remove currently selected item:
    comboBox1.get_Items().Remove(comboBox1.get_SelectedItem());
    // To remove "Tokyo" item:
    comboBox1.get_Items().Remove("Tokyo");
    
    // To remove item with index 0:
    comboBox1->Items->RemoveAt(0);
    // To remove currently selected item:
    comboBox1->Items->Remove(comboBox1->SelectedItem);
    // To remove "Tokyo" item:
    comboBox1->Items->Remove("Tokyo");
    

移除所有项

  • 调用 Clear 方法从集合移除所有项:

    ListBox1.Items.Clear()
    
    listBox1.Items.Clear();
    
    listBox1.get_Items().Clear();
    
    listBox1->Items->Clear();
    

请参见

任务

如何:对 Windows 窗体 ComboBox 控件、ListBox 控件或 CheckedListBox 控件的内容排序

概念

何时使用 Windows 窗体 ComboBox 而非 ListBox

参考

ComboBox

ListBox

CheckedListBox

其他资源

用于列出选项的 Windows 窗体控件