在load事件里给两个combox绑定值,代码如下:
            //combox1绑定值
            ocnn = new OleDbConnection(connections);
            ocnn.Open();
            
            ocmd = ocnn.CreateCommand();
            ocmd.CommandText = "select distinct Single_Date from MIS_InsertSingle";
            DataSet ds = new DataSet();
            oda = new OleDbDataAdapter(ocmd);
            oda.Fill(ds);
            this.cbo_Date.DataSource=ds.Tables[0];
            ocnn.Close();            //combox2绑定值
            OleDbConnection cnn = new OleDbConnection(connections);
            cnn.Open();
            OleDbCommand cmd = cnn.CreateCommand();
            cmd.CommandText = "select Out_Date from MIS_OutSingle";
            DataSet set = new DataSet();
            OleDbDataAdapter da = new OleDbDataAdapter(cmd);
            da.Fill(set);
            this.cbo_OutDate.DataSource=set.Tables[0];
            cnn.Close();
combox1显示正常而combox2的下拉列表值全是 System.Data.DataRowView。请问这是为什么。

解决方案 »

  1.   

    你没设置DisplayMember
    this.cbo_OutDate.DisplayMember="你要显示的字段";
      

  2.   

    Single_Date 、  Out_Date 字段定义的是什么类型?
      

  3.   

    this.cbo_Date.DataSource=ds.Tables[0];
    this.cbo_Date.DisplayMember = "显示字段";
    this.cbo_Date.ValueMember = "ID(自增列或者编号)";
      

  4.   

    两个类型都是一样的。用的是ACCESS数据库,文本类型
      

  5.   

    cbo_OutDate.DisplayMember=“显示字段”
      

  6.   

    this.cbo_Date.DataSource=ds.Tables[0];
    this.cbo_Date.DisplayMember = "显示字段";
    this.cbo_Date.ValueMember = "ID(自增列或者编号)";
      

  7.   

    楼上几位说的没错,楼主绑定数据源以后,设定一下DisplayMember ValueMember这两个属性就OK了