设置好DisplayValue, ValueMember
SelectedItem中就是System.Data.DataRowView对象
要取ValueMember对应的值,应该用SelectedValue

解决方案 »

  1.   

    兄弟,我按你的方法试了,还是老样子呀!我是这样写的,但是messagebox.show出来的值依然是System.Data.DataRowView。ComboxBox控件的DisplayValue, ValueMember我是在窗体的Load事件里设置的,下面的代码是在ComboBox控件的comboBox1_SelectedIndexChanged事件里写的! conn = mycon.Connection();
      SqlParameter para = new SqlParameter("@comOrderID", SqlDbType.Int);
      MessageBox.Show(comboBox1.SelectedValue.ToString().Trim(), "D");
      mycon.orderID = Convert.ToInt32(comboBox1.SelectedValue.ToString().Trim());
      para.Value = mycon.orderID;
      mycon.command().Parameters.Add(para);
      SqlDataAdapter detailda = new SqlDataAdapter();
      mycon.Command= "Select OrderID,ProductID,UnitPrice,Quantity,Discount from [order details] where OrderID=@comOrderID";
       detailda.SelectCommand = mycon.command();
           detailda.Fill(ds, "detail");
             dataGridView1.DataSource = ds.Tables["detail"];
                    mycon.close();
      

  2.   

    参考下面代码,ComboBox1.DataSource = myDataSet ;//数据集
    ComboBox1.DisplayMember = "person.userId" ;//表名加字段名
    ComboBox1.ValueMember = "person.username" ;this.ComboBox1.DataSource = myDataTable;//数据表
    this.ComboBox1.DisplayMember = "Name";//字段名
    this.ComboBox1.ValueMember = "userId";//字段名
    获取当前位置的数据
    DataRowView rowView = (DataRowView)ComboBox1.SelectedItem;
      

  3.   

    没有指明ComboBox绑定的字段名称(DisplayMember)
      

  4.   

    今天我也碰到了这个问题,结果是这样解决的:
    一开始我是通过一个通用数据类中的一个方法返回一个datatable dt的,然后就
    combobox1.datasouce = dt;
    combobox1.displaymember = "columnA";
    combebox1.valuemember = "comlumnB";
    数据是显示得出来,可是在combobox1_SelectedIndexChanged的事件里,取combobox1.SelectedValue就会返回System.Data.DataRowView,而不是columnB的值后来我把调用数据的过程移出来,变成
    OleDbDataAdapter cmd = new OleDbDataAdapter("select * from TableA", conn);
    DataTable dt = new DataTable();
    cmd.Fill(dt);
    combobox1.DataSource = dt;
    combobox1.DisplayMember = "columnA";
    combobox1.ValueMember = "columnB";
    就可以通过combobox1.SelectedValue返回columnB的值这里面究竟是什么原因,我也搞不清楚,还请哪位大侠给解释解释
      

  5.   


    我遇到同样的问题:comb.Text 
    返回值总是::System.Data.DataRowView
      

  6.   

    http://blog.csdn.net/xianfajushi/article/details/7017289
      

  7.   

    这跟你绑定的数据有关 要设置编码及对应的值
    //绑定
    CBox_Date.DataSource = dtResult;
                    CBox_Date.DisplayMember = "sperioddesc";
                    CBox_Date.ValueMember = "speriodcode";
    //读取
    string CBox_Date = this.CBox_Date.SelectedValue.ToString();