DataTable dt = new DataTable();
dt.Columns.Add("Name");
dt.Columns.Add("VV");
dt.Rows.Add(new string[] { "王一", "x" });
dt.Rows.Add(new string[] { "赵一", "z" });
dt.Rows.Add(new string[] { "王二", "y" });
dt.Rows.Add(new string[] { "赵二", "w" });
this.comboBox1.DataSource = dt;
this.comboBox1.DisplayMember = "Name";
this.comboBox1.ValueMember = "VV";
this.comboBox1.AutoCompleteSource = AutoCompleteSource.ListItems; //设置自动完成的源
this.comboBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend; //设置自动完成的的形式
上面的 AutoCompleteSource 是大家应该关注的一点,具体的值有9种选择,其中8种是可以研究一下的
————————————————————————————————
DisplayMember 与ValueMember 属性的区别:
DisplayMember绑定的是需显示的字段
ValueMember绑定的是对应的值
//*
所对应的值就是一条记录里面 有标识列ID(唯一) 有显示的列(如名称,可重复)
ValueMember 可以成为名称,也可成为ID
但是一般来说都只绑定ID 这样好处理,也很方便识别,
DisplayMember 是绑定显示的数据 如:北京
一般 DisplayMember是显示给客户看的
而ValueMember 是绑定处理程序标识 给程序员看的
当然要看具体需求了
*//
combobox控件显示的是DisplayMember 绑定的字段,也就是说用控件的text属性取的值是DisplayMember 绑定的字段。
而用combo.SelectedValue就可以取得选中项的ValueMember 值(未证实)。
————————————————————————————————————
SelectedValue 属性:获取或设置由 ValueMember 属性指定的成员属性的值。 类型:System.Object,包含由 ValueMember 属性指定的数据源成员的值的对象。
用法:textBox1.Text = ListBox1.SelectedValue.ToString();
————————————————————————————————————