zoukankan      html  css  js  c++  java
  • winform中comboBox控件加默认选项的问题

    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";//显示于界面的字段

  • 相关阅读:
    Git centos 6.5 搭建(gitosis)
    error at ::0 can't find referenced pointcut xxx
    MySql 主从配置
    svn 搭建
    Flatbuffers学习
    python3 获取函数变量
    pyqt5 重启相同线程错误:QThread: Destroyed while thread is still running
    WIN10 使用注册表设置单应用KIOSK模式(不限win10版本)
    WIN10 使用POWERSHELL 设置单应用KIOSK模式(win10家庭版或企业版)
    py文件加密打包成exe文件
  • 原文地址:https://www.cnblogs.com/ysz12300/p/5494752.html
Copyright © 2011-2022 走看看