将项添加到ComboBox

时间:2013-01-03 16:46:26

标签: c# .net combobox

我有一个 ComboBox 控件。

我将此控件绑定到DataSet表。

以下是代码:

comboBox.Items.Add(("Select"));
comboBox.DataSource = DataSet.ColorTable;
comboBox.DisplayMember = DataSet.ColorTable.ColorNameColumn.ColumnName;
comboBox.ValueMember = DataSet.ColorTable.ColorIDColumn.ColumnName;

我得到了这个结果:

enter image description here

我想在列表顶部显示 SELECT:字样。所以我需要在comboBox控件中添加另外的Item。 这是我如何实现它:

cmbCategory.Items.Add(("Select"));

但结果仍与上述相同。我只获得了列表顶部没有 SELECT:字样的颜色。

我知道如何将此字符串 - SELECT:添加到ComboBox控件并设置为此字符串ValueMember

5 个答案:

答案 0 :(得分:7)

改为使用Insert方法。

cmbCategory.Items.Insert(0, "Select");

注意:将此代码放在数据绑定之后。​​

答案 1 :(得分:3)

您可以先将颜色集合添加到arraydataset(如果您是从数据库中获取),然后添加项目“select”,然后添加数组的每个元素或dataset

的一列

Form_Load函数中以及颜色集合数组或数据库中发生更改的任何位置执行此操作。

答案 2 :(得分:2)

            //This will set Display member and value member
            comboBox.DisplayMember = "ColorName";
            comboBox.ValueMember = "ColorCode";

          //This will add a new row to table in binded dataset
            DataRow dr = dal.MyProperty_dsColors.Tables["ColorInfo"].NewRow();
            dr["ColorName"] = "Select Color"; //SomeName
            dr["ColorCode"] = 001; //Some ID
            dal.MyProperty_dsColors.Tables["ColorInfo].Rows.Add(dr); 

           //binding dataSource
            comboBox.DataSource = dal.MyProperty_dsColors.Tables["ColorInfo"];

答案 3 :(得分:1)

什么也可以帮助你设置ComboBox而不必在弹出窗口到达时“选择”它... 选择您的ComboBox,在属性选项卡下,选择Appearance-> Drop Down Style并选择DropDownList。

答案 4 :(得分:0)

如果我们想在combobox中添加手动值(例如integers),可以使用for循环来完成:

// sample code
int lower=1;
int higher=500;

for (int i=lower; i<=higher; i++)
 combo_values.Items.Add(i.ToString());

请注意,您必须使用int.Parse(combo_values.Text)命令来读取值。