您的位置:首页 > 其它

winform中comboBox控件加默认选项的问题

2011-06-28 10:39 316 查看
winform程序设计中,label,TextBox,ComboBox等几个控件几乎是用得最多的,在设计中经常会遇到一些小问题,如:comboBox控件绑定了数据源之后,如何设置默认值?

combobox绑定数据源之后是这样的
北京 <----默认显示的就是这条
上海
深圳
.... 想要让它显示成这样
请选择城市 <--------要想默认显示这条
北京
上海
深圳

....

尝试做法:

1、修改了DropDownStyle属性也不起作用。

2、消去数据源直接用 combobox.Items.Add()的方法好像也可以,但就失去了SelectedValue绑定ID,SelectedItem绑定名称功能,因为保存的时候需要储存ID并不是名称。所以用这种办法也不行。

3、如果是Asp.net中的DropDownList控件的话,绑定好数据源之后,大概这样就行了 dropdownList1.Items.Insert(0,new ListItem("name","value"));但是combobox这样设置就不行。

最后用这种办法:

先把数据源装载到DataTable对象中,再利用DataTable数据结构构建新的一行,并插入到第一项中。

示例代码如下:

//操作数据层类,根据自己实际代码修改
clsCheckItemOpr itemBll = new clsCheckItemOpr();

//获取DataTable数据集
DataTable dtbl = itemBll.GetAsDataTable("IsLock=false", "SysCode", 1);

//插入一个默认选项
DataRow dr = dtbl.NewRow();
dr["ItemCode"] = "0";//这个值可以自己需要设置,但不要和已经存在ID重复,所以最好设置特殊一点
dr["ItemName"] = "请选择城市";
dtbl.Rows.InsertAt(dr, 0);//指定起始位置插入

cmbCheckItem.DataSource = dtbl;//用DataTable绑定到combobox控件中 cmbCheckItem.ValueMember = "ItemCode";//设置SelectedValue字段 cmbCheckItem.DisplayMember = "ItemName";//显示于界面的字段

现在问题解决,达到我们想要的结果。

在此一记,无任何技术含量,高手请莫拍砖!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐