ComboBox cb = new ComboBox();
            string sql = "select 部门ID,名称 from 部门表";
            ConnHIS cHis = new ConnHIS();
            DataSet ds = new DataSet();
            ds = cHis.GetOleDBDataSet(sql);
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                cb.Text = dr["名称"].ToString();
                cb.Tag = dr["部门ID"];
                comboBox1.Items.Add(cb);
            }为什么在combobox中为什么不显示部门名称 只显示空白呢?

解决方案 »

  1.   


    cb.DataSource = ds.Tables[0];
    cb.DisplayMember = "名称";  
    cb.ValueMember = "部门ID";  
      

  2.   

    this.comboBox1.Items.Clear();
                string connString = @"Server=localhost;Integrated Security=True; Database=Test";
                SqlConnection thisConnection = new SqlConnection(connString);
                string strSql = "select distinct UserName from TestTable";
                SqlDataAdapter thisAdapter = new SqlDataAdapter(strSql,thisConnection);
                DataSet thisDateSet = new DataSet();
                thisAdapter.Fill(thisDateSet);            this.comboBox1.BeginUpdate();
                this.comboBox1.DataSource = thisDateSet.Tables[0];
                this.comboBox1.DisplayMember = "UserName";
                this.comboBox1.ValueMember = "UserName";
                this.comboBox1.EndUpdate();
      

  3.   

    comboBox1.Items.Add(cb);改为
    comboBox1.Items.Add(cb.Text);
      

  4.   

    首先建立一个类
    using System;
    using System.Collections.Generic;
    using System.Text;namespace Function
    {
        /// <summary>
        /// 选择项类,用于ComboBox或者ListBox添加项
        /// </summary>
        public class ListItem
        {
            private string id = string.Empty;
            private string name = string.Empty;
            
            /// <summary>
            /// 构造函数
            /// </summary>
            /// <param name="sid"></param>
            /// <param name="sname"></param>
            public ListItem(string sid, string sname)
            {
                id = sid;
                name = sname;
            }        /// <summary>
            /// 重写ToString 方法 返回Name
            /// </summary>
            /// <returns></returns>
            public override string ToString()
            {
                return this.name;
            }
            /// <summary>
            /// List集合 ID
            /// </summary>
            public string ID
            {
                get
                {
                    return this.id;
                }
                set
                {
                    this.id = value;
                }
            }
            /// <summary>
            /// List集合 Name
            /// </summary>
            public string Name
            {
                get
                {
                    return this.name;
                }
                set
                {
                    this.name = value;
                }
            }
        }
    }然后调用这个类
      DataSet ds = new DataSet();
      ds = cHis.GetOleDBDataSet(sql);
      foreach (DataRow dr in ds.Tables[0].Rows)
      {
        comboBox1.Items.Add(new ListItem(dr["名称"].ToString(), dr["部门ID"].ToString()));
      }
      

  5.   

    使用的例子((ListItem)comboBox1.SelectedItem).ID;
    ((ListItem)comboBox1.SelectedItem).Text;
      

  6.   

    ComboBox 的Text 属性是当前选择的文本