-
首先如果要给ComboBox控件输入要显示的内容,方法是点击控件会显示如下图所示:
-
然后点击”编辑项”,如下所示:
下面在这里输入控件要显示的内容,即可。
如果要让ComboBox控件设置默认显示项,代码如下所示:
//让ComboBox控件显示“明细计划”
comboBox1.Text = "明细计划";
comboBox1.SelectedIndex = 0;
或者
string[] array = { "Red", "Green", "White", "Blue", "Yellow" };
comboBox1.DataSource = array;
或者
for (int i = 0; i < 5; i++)
{
comboBox1.Items.Add(i + 1);
}
其中,赋值最关键的是SelectedIndex的赋值,而不是Text的赋值。
-
下面再打开ComboBox控件的属性下图位置,设置控件的下拉框是否可编辑等状态,如下图所示:
根据上图可以看到ComboBox的常用下拉格式DropDownStyle 有三种,分别是:
Simple是文本可编辑,下拉列表总可见;
DropDown是默认样式,文本可编辑,下拉需用户点击箭头;
DropDownList是文本不可编辑,下拉需用户点击箭头;
需要注意的是DropDownList形式直接使用comboBox1.Text = "值";形式来赋值结果会显示为空,而不会报任何错误或异常提示。
-
如果动态添加或者显示ComboBox下拉框的内容,首先需要在ComboBox属性的“字符串集合编辑器”中清空之前的内容,即如下所示:
或者使用Clear命令,代码如下所示:
this.comboBox1.Items.Clear();
动态添加ComboBox下拉框的内容的代码如下所示:
if (this.comboBox1.Items.Count > 0)
{
this.comboBox1.Items.Clear();
this.comboBox1.Items.AddRange(new object[] {
"明细计划",
"执行反馈"});
comboBox1.Text = "明细计划";
comboBox1.SelectedIndex = 0;
}
注意上述是通过this.comboBox1.Items.AddRange来实现项的添加,不过要注意,如果不清空,会出现重复添加的现象。
如果要获取控件选中项的内容,代码如下所示:
MessageBox.Show(comboBox1.SelectedItem.ToString());
如果要获取控件选中项的索引,代码如下所示:
MessageBox.Show(comboBox1.SelectedIndex.ToString());
如果要与数据库相连接并进行数据源的绑定,代码如下所示:
private void DoBindDataSource()
{
//构造数据源(或从数据库中查询)
DataTable ADt = new DataTable();
DataColumn ADC1 = new DataColumn("F_ID", typeof(int));
DataColumn ADC2 = new DataColumn("F_Name", typeof(string));
ADt.Columns.Add(ADC1);
ADt.Columns.Add(ADC2);
for (int i = 0; i < 3; i++)
{
DataRow ADR = ADt.NewRow();
ADR[0] = i+1;
ADR[1] = "Name_" + (i+1);
ADt.Rows.Add(ADR);
}
//进行绑定
comboBox1.DisplayMember = "F_Name"; //控件显示的列名
comboBox1.ValueMember = "F_ID"; //控件值的列名
comboBox1.DataSource = ADt;
}
相关文章
- 08-03Unity之GUI控件
- 08-03ViewPager控件之PagerAdapter适配器
- 08-03不使用DataContext直接将ViewModels绑定到ItemsControl控件
- 08-03DevExpress控件之:ChartControl 动态绑定数据
- 08-03关于ComboBox的控件事件CBN_SELCHANGE总是取到旧值的问题
- 08-03QT的horizontalSlider 控件使用说明
- 08-03使用layout_weight设置控件占屏幕百分比
- 08-03鼠标进入与离开的消息(使用CM_MOUSEENTER来判断是否进入控件)
- 08-03LODOP打印控件之LODOP.NewPageA()方法
- 08-03第25天 | 28天学会PyQt5,高级控件之QTableWidget