关于C#winForm comboBox控件的SelectedValue属性
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于C#winForm comboBox控件的SelectedValue属性相关的知识,希望对你有一定的参考价值。
当前comboBox有3个值
A
B
C
如何在Form的Load中 把数据库中读到的值赋给SelectedValue属性(使comboBox默认选中该项)
如:
数据库表'K'中有主键'ID'值为1/2/3,对应字段'Name'值为A/B/C;
外联表'L'中字有段'ID'值为1/2/3;
public void BindComboBox()
/*在winForm的Load事件中给comboBox用Items.Add()方法将表'K'的'Name'字段添入,也就是A,B,C三个值;*/
public void LoadDBValue()
/*在数据库'L'中将读到的一个值用SelectedValue显示在comboBox中*/
/*例如 读到2,则显示默认选中B*/
第二个方法的SelectedValue怎么写?
我写成这样:
//用SqlDataReader类的变量reader接收数据
int cmbValue = int.Parse(reader["id"].ToString());
comboBox.SelectedValue = cmbValue;
cmbValue值为1~3时,为什么 comboBox默认都是空白?(此时comboBox中的Items已经有A,B,C三项)
this.comboBox1.DataSource = dt
this.comboBox1.DisplayMember = "name";
this.comboBox1.ValueMember = "id";
这样comboBox里面就有了显示值和返回值。
2,获取到Value属性后,要让它显示默认的项,就要找到该项在comboBox1中的位置Index
int cmbindex= comboBox1.FindString(value);
comboBox1.SelectedItem = comboBox1.Items[cmbindex]; 参考技术A comboBox.selectindex= cmbValue-1;
你数据库里的ID字段值从1开始,但是comboBox的selectindex索引是从0开始的。追问
规定用SelectedValue属性的
参考技术B 呆子, 你的初始化的item中没有 123 它怎么可能有值加判断
if(cmbValue ==1)
this.combox1.selectedValue="A";
else if ()
else if ()
我没有尝试,你自己试试追问
不行啊 不加 if 直接给selectedValue="A"都不行
参考技术C OleDbCommand objCmd = new OleDbCommand();objCmd.CommandText = "select id,dept_name,dept_tel from table_dept";
DataSet objDataset = DBUtil.GetDataSet(objCmd, "table_dept");
this.comboBox1.DataSource = objDataset;
this.comboBox1.DisplayMember = "table_dept.dept_name";
this.comboBox1.ValueMember = "table_dept.id";追问
有点复杂了吧
本回答被提问者和网友采纳winform DataGridView 动态添加一列控件(自定义控件)
winform DataGridView 动态添加一列控件, 这列 是一个 自定义的 combobox控件。就是在 DataGridView 一加载的时候就添加上! 求帮助
参考技术A 使用DataGridView的模板,在模块中插入一个comboBox控件就可以了。追问我的是自定义控件 不是自带的 combobox。
追答new ComboBox()不就可以动态生成了吗? 谢谢
追问new ComboBox() 你实力出来的也是 自带的combobox 啊 不是我组件里的combobox啊! 我的组件combobox 已经定义好了
追答噢,,定义好了的可以直接引用Id就可以了嘛,添加到ItemTemplate模板中。谢谢
参考技术B 自定义模板啊 添加你定义的自定义控件你试试以上是关于关于C#winForm comboBox控件的SelectedValue属性的主要内容,如果未能解决你的问题,请参考以下文章