表:  Table_A,
列:  SCHOOLID    SCHOOLNAME
表:  Table_B,
列    SCHOOLID    GRADENAME
我现在COMBOBOX1获取的是Table_A的SCHOOLNAME,
我COMBOBOX2想要根据COMBOBOX显示的所获取Table_B的GRADENAME
大家帮帮忙。
SELECT GRADENAME from Table_A a,Table_B b where a.SCHOOLID = b.SCHOOLID
我怎么获取COMBOBOX1显示SCHOOLNAME所对应的SCHOOLID啊?

解决方案 »

  1.   

    COMBOBOX1绑定的时候有属性的ValueField和textfield,
    ValueField设置为SCHOOLID     ,textfield设置为 SCHOOLNAME ,
    获取value即可
      

  2.   

    select SCHOOLID from Table_A where SCHOOLNAME =COMBOBOX1.SelectedValue
      

  3.   

    private DataTable GetTable(string sql)
            {
                using (OracleConnection conn = new OracleConnection("Data Source=ORCL;User ID=mamabaobao;Password=mamabaobao"))
                {
                    DataTable dt = new DataTable();
                    OracleDataAdapter da = new OracleDataAdapter(sql, conn);
                    da.Fill(dt);
                    return dt;
                }
            }
            private void Form1_Load(object sender, EventArgs e)
            {
                comboBox1.DataSource = GetTable("SELECT SCHOOLNAME FROM CM_SCHOOL");
                comboBox1.ValueMember = "SCHOOLNAME";
            }
    我这么写的,是像这样的例子吗?
    http://www.cnblogs.com/ganmk/archive/2008/08/27/1277763.html
      

  4.   

    对的,
     private void Form1_Load(object sender, EventArgs e) 
            { 
                comboBox1.DataSource = GetTable("SELECT SCHOOLNAME FROM CM_SCHOOL"); 
                comboBox1.DisplayMember="SCHOOLNAME";
    comboBox1.ValueMember = "SCHOOLID"; 
            } 就ok了
      

  5.   

    这样选择之后的Value就是SCHOOLID字段的值了,显示的还是SCHOOLNAME字段值。