comboBox1.DisplayMember = "codename";
comboBox1.ValueMember = "codeno";
comboBox1.DataSource = ds.Tables[0];comboBox2.DisplayMember = "codename";
comboBox2.ValueMember = "codeno";
comboBox2.DataSource = ds.Tables[0];可是当我下拉任何一个comboBox后,另外的comboBox的text也都定位到了下拉的text。请问怎么处理??

解决方案 »

  1.   

    Fill到不同的表,分别绑定da.Fill(ds, "test1");
    da.Fill(ds, "test2");comboBox1.DisplayMember = "codename";
    comboBox1.ValueMember = "codeno";
    comboBox1.DataSource = ds.Tables["test1"];comboBox2.DisplayMember = "codename";
    comboBox2.ValueMember = "codeno";
    comboBox2.DataSource = ds.Tables["test2"];
      

  2.   

    楼上,我数据库是单独的类,查询后只返回dataset,没法Fill
      

  3.   

    那就创建多个DataSet实例,分别绑定DataSet ds1 = GetDataSet();  //GetDataSet()为你的返回DataSet的方法
    DataSet ds2 = GetDataSet();comboBox1.DisplayMember = "codename";
    comboBox1.ValueMember = "codeno";
    comboBox1.DataSource = ds1.Tables["test1"];comboBox2.DisplayMember = "codename";
    comboBox2.ValueMember = "codeno";
    comboBox2.DataSource = ds2.Tables["test2"];
      

  4.   

    DataSet ds1 = GetDataSet();  //GetDataSet()为你的返回DataSet的方法
    DataSet ds2 = GetDataSet();comboBox1.DisplayMember = "codename";
    comboBox1.ValueMember = "codeno";
    comboBox1.DataSource = ds1.Tables[0];  //这里忘改了comboBox2.DisplayMember = "codename";
    comboBox2.ValueMember = "codeno";
    comboBox2.DataSource = ds2.Tables[0];
      

  5.   

    谢谢,搞定。不过我用了两个dataview。你的方法也可以。
    结帖
      

  6.   

    DataTable dt = new DataTable();
    dt = ds.Tables[0].Copy();this.comboBox2.DataSource = dt;
    this.comboBox2.DisplayMember = "id";
      

  7.   

    嗯,同意楼上的楼上,如果不能Fill多个表,用copy()这种方法好