combobox.DataBindings.Add("要绑定控件的属性如下拉框的SelectedValue\Text",
但是,DataBindings只能绑定一个字段,而绑定多个字段时典型的如列表控件Combobox、ListBox控件,需要键值对,这时就需要指定DataSource(实现IList接口就行),然后指定ValueMember、DisplayMember
所以,如果是下拉列表,你只想绑定一个字段,用DataBindings可以,想绑定两个字段
用combobox.DataSource
combobox.DisplayMember
combobox.ValueMember
object
string
SelectedIndex、SelectedItem表示选中了哪项目,也可以设置combobox.SelectedIndex
直接设置
如果是绑定的,一定要设置的是一个在绑定在已存在的项。
例如有一个部门表的DataTable,部门ID是一个字段,用于唯一标识一个部门ID,部门名称是另一个字段,用于唯一标识ID对应的部门名称
绑定如下:
this.ComboBox1.DataSource
this.ComboBox1.DisplayMember="部门名称";//显示中文,方便用户选择
this.ComboBox1.ValueMember="部门ID";
需要着重说明的时,如果你有一个类Item如有两个属性:A、B,同时你做了ItemCollection类用来表示多个Item,绑定时:
this.ComboBox1.DataSource
this.ComboBox1.DisplayMember="A";
this.ComboBox1.ValueMember="B";
代码:
Dictionary<int, string> mydiction = new Dictionary<int, string>();
mydiction.Add(2, "张三");
this.listBox1.DataSource = new BindingSource(mydiction, null);
this.listBox1.DisplayMember = "Value";
this.listBox1.ValueMember = "Key";