C# combobox绑定数据源(datasource) -绑定DataSet数据

 

 

1.绑定数据源

1.1数据源为dataTable

DataTable dt=new DataTable ();

//显示的数据

ComBox1.DisplayMemeber="name";//name为DataTable的字段名

//隐藏的数据(对于多个数据,可以用逗号隔开。例:id,name)
ComBox1.ValueMember="id";//id为DataTable的字段名(对于隐藏对个数据,把数据放到一个字段用逗号隔开)

//绑定数据源
ComBox1.DataSource=dt;
 

2.选择数据

ComBox1.SelectedValue 获取或设置由ValueMember 属性指定的成员属性的值

ComBox1.SelectedText   获取或设置ComboBox 的可编辑部分中选定的文本。

 

 

 

        private void SqlServrDbaseForm_Load(object sender, EventArgs e)
        {

            //获取绑定服务器所有数据库名: 
            ClassSqlServrDbaseConfig classSqlServrDbaseConfig = new ClassSqlServrDbaseConfig();
            DataSet ds = classSqlServrDbaseConfig.GetSysDatabases();
            this.comboBoxDb.DisplayMember = "name";//下拉框绑定表中的某个字段
            this.comboBoxDb.DataSource = ds.Tables[0];//下拉框的数据源绑定到表
            this.comboBoxDb.SelectedIndex = -1;//默认不选中第一个数据
        }

 

 

一般手动添加 ComboBox 数据有很多种方法,可以直接添加 Item,也可以通过数据绑定 Value 和 Display。
直接添加 Item 无法设置下拉框的值,所以我使用绑定 ComboBox 数据源的 Datatble 方式

直接通过二维数组 String 自动转换绑定到 ComboBox
 

// 调用方法
            string[][] Sort_arr = new string[2][];
            Sort_arr[0] = new string[] {"0","1","2" };
            Sort_arr[1] = new string[] { "综合排序" , "销量排序", "新品排序" };
            StrArrToCbx(Sort_arr,CbxSort);//  传入数组和实例化的ComboBox即可自动完成绑定

 

绑定方法

 public void StrArrToCbx(string[][] strArr,ComboBox combo,string str1="id",string str2="name")
        {
            DataTable dt_inner = new DataTable();
            dt_inner.Columns.Add(new DataColumn(str1));
            dt_inner.Columns.Add(new DataColumn(str2));
            if (strArr.Length > 0)
            {
                for (int d = 0; d < strArr[0].Length; d++)
                {
                    DataRow dr_inner = dt_inner.NewRow();
                    dr_inner[str1] = strArr[0][d];
                    dr_inner[str2] = strArr[1][d];
                    dt_inner.Rows.Add(dr_inner);
                }
            }
            combo.DataSource = dt_inner;
            combo.ValueMember = str1;
            combo.DisplayMember = str2;
            combo.SelectedIndex = 0;
            //return dt_inner;
        }

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 9
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论

打赏作者

zgscwxd

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值