C#中comboBox控件的一些基本用法小结

private void InitCombo()
        {
            dt.Columns.Add("Text");
            dt.Columns.Add("Value");
            DataRow dr1 = dt.NewRow();
            DataRow dr2 = dt.NewRow();
            DataRow dr3 = dt.NewRow();
            dr1["Text"] = "0-明细计划";
            dr1["Value"] = "0";
            dr2["Text"] = "1-汇总计划";
            dr2["Value"] = "1";
            dr2["Text"] = "2-执行反馈";
            dr2["Value"] = "2";
            dt.Rows.Add(dr1);
            dt.Rows.Add(dr2);
            dt.Rows.Add(dr3);
            this.comBoxCXLX.DataSource = dt;
            this.comBoxCXLX.DisplayMember = "Text";
            this.comBoxCXLX.ValueMember = "Value";
        }

上面代码可以实现将明细计划、汇总计划、执行反馈三个选项绑定到ComboBox的下拉框中。

Value的使用:comBoxCXLX.SelectedValue

假如说:该comboBox控件显示内容受别的控件限制,如何显示给comboBox空间赋值呢?实现代码如下:

 

//让combox控件显示“明细计划”
comBoxCXLX.Text = "明细计划";
comBoxCXLX.SelectedIndex = 0;
//让combox控件显示“汇总计划”
comBoxCXLX.Text = "汇总计划";
comBoxCXLX.SelectedIndex = 1;

其中,赋值最关键的是SelectedIndex的赋值!而不是Text

 

小注:

       1、这里也需要输入你要显示的内容:

C#中comboBox控件的一些基本用法小结_第1张图片

        2、下面的属性可以控制,combox下拉框是否可编辑等状态

C#中comboBox控件的一些基本用法小结_第2张图片

3、ComBox控件设置默认显示项

        找到相应窗体的Designer.cs文件,在Designer.cs文件代码中找到,相应代码,如下:

 

// 
// comBoxCXLX
// 
this.comBoxCXLX.Anchor = System.Windows.Forms.AnchorStyles.None;
this.comBoxCXLX.DisplayMember = "Text";
this.comBoxCXLX.FormattingEnabled = true;
this.comBoxCXLX.Items.AddRange(new object[] {
"明细计划",
"汇总计划",
"执行反馈"});
this.comBoxCXLX.Location = new System.Drawing.Point(122, 215);
this.comBoxCXLX.Name = "comBoxCXLX";
this.comBoxCXLX.Size = new System.Drawing.Size(161, 20);
this.comBoxCXLX.TabIndex = 333;
this.comBoxCXLX.ValueMember = "Value";

假如我想要combox控件默认显示,“执行反馈”这个内容呢?
很简单,在上述代码的末尾加上,下面这句话即可:

 

this.comBoxCXLX.SelectedIndex = 2;

当然在.cs也就是普通代码中加上上面这句话,也可以实现默认显示。

4、如何动态添加或者显示combox下拉框的内容呢?

      首先,需要在combox属性的“字符串集合编辑器”中清空之前的内容(当然在使用之前直接调用clear函数也可以)。

 

 if (this.comBoxCXLX.Items.Count > 0)
                {
                    this.comBoxCXLX.Items.Clear();
                    this.comBoxCXLX.Items.AddRange(new object[] {
            "明细计划",       
            "执行反馈"});
                    comBoxCXLX.Text = "明细计划";
                    comBoxCXLX.SelectedIndex = 0;
                }

      可以通过this.comBoxCXLX.Items.AddRange来实现,项的添加,不过要注意,如果不清空,会出现重复添加的现象奥。

 

个人微信公众号:

C#中comboBox控件的一些基本用法小结_第3张图片

作者:jiankunking 出处:http://blog.csdn.net/jiankunking

 

 

 

 

 

 

你可能感兴趣的:(WinForm)