首页 > 学院 > 开发设计 > 正文

C#学习日记2017-02-07 Combox下拉控件问题

2019-11-11 05:01:37
字体:
来源:转载
供稿:网友

问题1描述:后台 传输数据到前台界面,想要实现的功能是在combox控件中默认显示从数据库中读取出来的第一个数据

解决方法:利用Combox的SelectedIndex属性可以解决数据默认的选项的问题,

eg:

 cmbPRoNO.SelectedIndex = 0; //设置下拉控件默认显示第一项数据。还可以默认选中其他的选项

学习内容:

Combox的SelectedIndex属性可以设置默认的选中项。

问题描述:Combox控件的数据来源是从后台传入的一个DataTable对象,这个对象有两列,一列对应名称,一列对应值,要求Combox控件显示的是名称,值和名称还要一一对应。在程序运行的时候Combox控件中选中一个名字,背后对应一个值,并将这个值传入数据库中。

解决方法:Combox控件可以利用DataTable对象绑定数据来源,一般这个表格都只有两列。使用Combox类的ValueMember属性可以绑定Combox控件子项的值,使用Combox类的DisplayMember属性可以绑定子项的名称

eg:

                      Public void xxx()                       {                            DataTable dt = new DataTable();            //定义一个DataTable对象dt                       dt = clsPubCT.ConvertxmlToDataSet(strResultDt); //对dt进行赋值                       cmbProNO.DataSource = dt;                       //Combox控件绑定数据来源为dt             
                       cmbProNO.ValueMember = dt.Columns[0].ToString(); // 设置Combox控件的ValueMember 属性                       cmbProNO.DisplayMember = dt.Columns[1].ToString(); //设置Combox控件的DisplayMember属性                       cmbProNO.SelectedIndex = 0;       //设置Combox控件默认选中值为第一项。                                              }

学习内容:

首先需要指定 combox.DataSource,然后用表DataSource的字段名设置combox 的 ValueMember和DisplayMember ,那么当你选择combox 的一个item时,你直接可见的是此item的 DisplayMember 对应内容,而此 item的值是ValueMember 的对应内容。

添加问题:如何获取绑定数据来源的Combox控件中选中的值,如何获取绑定数据来源的Combox控件选中的名称。

解决方法:Combox控件的text属性可以获取选中项的文本信息,本列中可以获取Combox控件的DisplayMember 名称,Combox控件的SelectedValue属性可以获取选中项的值,本例中可以获取Combox控件的ValueMember值

//更新工序编码,获取combox控件的选中项的值(名称对应的值)
configSet.AppSettings.Settings["ProcedureNO"].Value = cmbProNO.SelectedValue.ToString(); 
//更新工作单元名称,获取combox控件的选中项的文本值(名称)
configSet.AppSettings.Settings["WorkUnitName"].Value = cmbStationNO.Text;
//更新数据类型,如果控件中只有一个值,直接使用SelectedItem获取相关的值。
configSet.AppSettings.Settings["DataType"].Value = cmbDateType.SelectedItem.ToString(); 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表