2 doriszhong doriszhong 于 2015.06.25 11:35 提问

c# combobox绑定了数据源,显示为name,值为id

c# combobox绑定了数据源,显示为name,值为id,
1.当选择用户选择name时,获取id值
2,当用户输入值时,与数据源的name进行匹配,匹配成功则,获取相应id,否则提示用户没有该数据,,怎么做

dataset dscommon =new dataset();
dscommon= ora.dselect("select pdline_id,pdline_name from sys_pdline");
comb_pdline.DataSource = dscommon;
try
{
comb_pdline.DisplayMember = "PDLINE_NAME";
comb_pdline.ValueMember = "PDLINE_ID";
}
catch(Exception ex)
{
MessageBox.Show("错误信息"+ex);
}

4个回答

Tiger_Zhao
Tiger_Zhao   Rxr 2015.06.25 11:50

C# combobox绑定数据源(datasource)
绑定后取 SelectedValue 就行。
DropDownStyle 属性设为 DropDownList,只能选不能输入,选了肯定匹配。

caozhy
caozhy   Ds   Rxr 2015.06.25 12:26

直接设置combobox的DisplayMember为name,ValueMember为id即可。

doriszhong
doriszhong   2015.06.25 17:41

dataset dscommon =new dataset();
dscommon= ora.dselect("select pdline_id,pdline_name from sys_pdline");
comb_pdline.DataSource = dscommon;
try
{
comb_pdline.DisplayMember = "PDLINE_NAME";
comb_pdline.ValueMember = "PDLINE_ID";
}
catch(Exception ex)
{
MessageBox.Show("错误信息"+ex);
}
不能这样设置显示值吗图片说明

CSDNXiaoF
CSDNXiaoF   2015.06.26 15:41

两种方法
1修改下拉框控件属性为DropDownList,使得下拉框只允许选择,这样避免匹配问题。
2可选择,也可输入
将取出的结果集存放于全局变量中,拿用户输入值去全局变量中检索,不存在,报错。存在,检出ID,
然后将对应ID和NAME的值设置到下拉框中

Csdn user default icon
上传中...
上传图片
插入图片