comboBox控件的数据绑定方法.docx
绑定List集合
首先创建数据绑定方法,在方法中创建一个string类型的List集合。并将集合赋值给控件的DataSource(数据源)完成数据绑定。
//数据绑定方法1,绑定list集合
privatevoid?DataBinding1()
{
???Liststringlist?=?newListstring()
???{
??????111,222,333,444
???};
???this.cmb_list.DataSource?=?list;
}
代码运行效果如下
绑定数组集合
创建数据绑定方法,在方法中创建一个string类型的数组集合。并将数组赋值给控件的DataSource(数据源)完成数据绑定。
//数据绑定方法2,绑定数组集合
privatevoid?DataBinding2()
{
???string[]?array?=?newstring[]?{?aaa,?bbb,?ccc,?ddd?};
???this.cmb_Array.DataSource?=?array;
}
代码运行效果如下
绑定对象集合
首先创建一个实体类,用于存储数据
publicclassData
{
???publicstringID?{?get;?set;?}
???publicstringName?{?get;?set;?}
}
创建数据绑定方法,在方法中创建一个对象类型的List集合。并将集合赋值给控件的DataSource(数据源),并给控件的DisplayMember属性和ValueMember属性赋值,完成数据绑定。
//数据绑定方法3,绑定对象集合
ListData?datas?=?newListData();
privatevoid?DataBinding3()
{
????????????
???Datadata1?=?new?Data()?{?ID?=?A,?Name?=?西门子?};
???Datadata2?=?new?Data()?{?ID?=?B,?Name?=?三菱?};
???Datadata3?=?new?Data()?{?ID?=?C,?Name?=?欧姆龙?};
???datas.Add(data1);
???datas.Add(data2);
???datas.Add(data3);
???this.cmb_Data.DataSource?=?datas;
???this.cmb_Data.DisplayMember?=?Name;
???this.cmb_Data.ValueMember?=?ID;
}
使用这种方法绑定控件我们可以利用控件的SelectedIndexChanged事件通过选中的DisplayMember来查找对应的ValueMember。
privatevoidcmb_Data_SelectedIndexChanged(objectsender,?EventArgse)
{
???this.txt_DataID.Text?=?cmb_Data.SelectedValue.ToString();
}
代码运行效果如下
绑定DataTable
方法与绑定对象集合方法类似,使用这种方法同样可以利用控件的SelectedIndexChanged事件,通过选中的DisplayMember来查找对应的ValueMember,实现代码如下。
//数据绑定方法4,绑定DataTable
privatevoid?DataBinding4()
{
????DataTabledt?=?newDataTable();
????DataColumndc1?=?newDataColumn(Id);
????DataColumndc2?=?newDataColumn(Name);
????dt.Columns.Add(dc1);
????dt.Columns.Add(dc2);
????DataRowdr1?=?dt.NewRow();
????dr1[Id]?=?10;
????dr1[Name]?=?上位机;
????DataRowdr2?=?dt.NewRow();
????dr2[Id]?=?11;
????dr2[Name]?=?全栈;
????DataRowdr3?=?dt.NewRow();
????dr3[Id]?=?12;
????dr3[Name]?=??Web上位机;
????dt.Rows.Add(dr1);
????dt.Rows.Add(dr2);
????dt.Rows.Add(dr3);
????this.cmb_DataTable.DataSource?=?dt;
????this.cmb_DataTab