我用的ComboBox联动.
为什么我一到SelectedIndexChanged事情件里面写联动的绑定就出错
老是说我选中的是System.Data.DataRowView,我明明选中的有值啊

解决方案 »

  1.   

    或请哪位大哥给一个combobox联动的例子,谢谢
      

  2.   

    就是一个combobox1,combobox2
    在load里面绑定,绑定的时候我都写了默认的绑定值,均为第一个
    bind(combobox1)
    bind(combobox2)combobox2是根据combobox1的选项进行绑定
    然后在combobox1的SelectedIndexChanged事情里面写
    bind(combobox2)combobox2是根据combobox1的选项进行绑定就是这里,如果这里不写就不出错,一写就说我选中的项是System.Data.DataRowView,但是我明明选中的是combobox1的项目啊.
      

  3.   

    ComboBox绑定的的时候出问题了,没有指定其Text和Value值
      

  4.   

    我也想问个简单的问题,那个ComboBox是什么控件啊?我怎么找不到呢?
      

  5.   

    应该是你在绑定后取值时取的有问题,大致写了一个例子,你看下吧private void RegisterForm_Load(object sender, EventArgs e)
    {
        SqlConnection con = new SqlConnection("server=root_db;database=users;uid=sa;password=");
        SqlDataAdapter da = new SqlDataAdapter("select group_id, group_name from mygroup", con);
        DataSet ds = new DataSet();
        da.Fill(ds, "group");
        DataTable dtGroup = ds.Tables["group"];    comboBox1.DataSource = dtGroup;
        comboBox1.DisplayMember = "group_name";
        comboBox1.ValueMember = "group_id";
    }private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (comboBox1.SelectedIndex > -1)
        {
            //注意以下两行代码,估计人的错误就在这里
            DataRowView drv = (DataRowView)comboBox1.SelectedItem;
            string gId = drv.Row["group_id"].ToString();
            SqlConnection con = new SqlConnection("server=root_db;database=users;uid=sa;password=");
            SqlDataAdapter da = new SqlDataAdapter("select user_id, user_name from myuser where group_id='" + gId + "'", con);
            DataSet ds = new DataSet();
            da.Fill(ds, "user");
            DataTable dtUser = ds.Tables["user"];        comboBox2.DataSource = dtUser;
            comboBox2.DisplayMember = "user_name";
            comboBox2.ValueMember = "user_id";
        }
    }
      

  6.   

    不过我就是不知道为什么?
    为什么和dropdownlist不一样呢?
      

  7.   

    使用绑定后ComboBox的Items里的每个Item都是DataRowView类型的对象,如果取值要用SelectedValue来取,
    SelectedValue的值是对应ValueMember 属性的字段值。
      

  8.   


    comboBox2.ValueMember = "user_id";
    comboBox2.DisplayMember = "user_name";
    comboBox2.DataSource = dtUser;
    这么绑定试试