private void com_name_SelectedIndexChanged_1(object sender, EventArgs e)//根据产品名字进行级联绑定
        {
                com_num.DataSource = DCC.SqlDC.SDC.GetTable("select m_ID,m_NO from material where m_Name='" + com_name.Text + "'");
                com_num.DisplayMember = "m_NO";
                com_num.ValueMember = "m_ID";
                com_lx.DataSource = DCC.SqlDC.SDC.GetTable("select m_ID,m_Type from material where m_ID=" +com_num.SelectedValue + "");
                com_lx.DisplayMember = "m_Type";
                com_lx.ValueMember = "m_ID";
                com_xh.DataSource = DCC.SqlDC.SDC.GetTable("select m_ID,型号 from material where m_ID=" + com_num.SelectedValue + "");
                com_xh.DisplayMember = "型号";
                com_xh.ValueMember = "m_ID";
                com_gg.DataSource = DCC.SqlDC.SDC.GetTable("select m_ID,规格 from material where m_ID=" + com_num.SelectedValue + "");
                com_gg.DisplayMember = "规格";
                com_gg.ValueMember = "m_ID"; 
                                  }问题是1个产品名可能有多个编号,因为规格,类型的不同。如何当我选择1个产品名comboBox另外个编号comboBox出来多个编号,这个时候我选择1个编号得到想要的结果

解决方案 »

  1.   

     采用Ajax和Json数据传输的格式来写吧 
      

  2.   

    根据条件去数据库中查就是了,查完了绑定那个combox就行了
      

  3.   


    晕   ajax和json是在web里面才能用的啊!
      

  4.   

    根据combobox 值查询数据就是
      

  5.   

    combobox联动吧,selectindexchanged,根据一个combobox的值作为条件来获取另外一个combobox的值
      

  6.   

    //com_name.DataSource = DCC.SqlDC.SDC.GetTable("select m_ID,m_Name from material where m_NO='" + com_num.Text + "'");
                //com_name.DisplayMember = "m_Name";
                //com_name.ValueMember = "m_ID";
                //com_lx.DataSource = DCC.SqlDC.SDC.GetTable("select m_ID,m_Type from material where m_NO='" + com_num.SelectedValue + "'");
                //com_lx.DisplayMember = "m_Type";
                //com_lx.ValueMember = "m_ID";
                //com_xh.DataSource = DCC.SqlDC.SDC.GetTable("select m_ID,型号 from material where m_NO='" + com_num.SelectedValue + "'");
                //com_xh.DisplayMember = "型号";
                //com_xh.ValueMember = "m_ID";
                //com_gg.DataSource = DCC.SqlDC.SDC.GetTable("select m_ID,规格 from material where m_NO='" + com_num.SelectedValue + "'");
                //com_gg.DisplayMember = "规格";这是我根据编号再绑顶各个combobox的值但是有问题,以前没接触过求各位大虾上点代码参考下
      

  7.   

    //com_name.DataSource = DCC.SqlDC.SDC.GetTable("select m_ID,m_Name from material where m_NO='" + com_num.Text + "'");
                //com_name.DisplayMember = "m_Name";
                //com_name.ValueMember = "m_ID";
                //com_lx.DataSource = DCC.SqlDC.SDC.GetTable("select m_ID,m_Type from material where m_NO='" + com_num.SelectedValue + "'");
                //com_lx.DisplayMember = "m_Type";
                //com_lx.ValueMember = "m_ID";
                //com_xh.DataSource = DCC.SqlDC.SDC.GetTable("select m_ID,型号 from material where m_NO='" + com_num.SelectedValue + "'");
                //com_xh.DisplayMember = "型号";
                //com_xh.ValueMember = "m_ID";
                //com_gg.DataSource = DCC.SqlDC.SDC.GetTable("select m_ID,规格 from material where m_NO='" + com_num.SelectedValue + "'");
                //com_gg.DisplayMember = "规格";这是我根据编号再绑顶各个combobox的值但是有问题,以前没接触过求各位大虾上点代码参考下
      

  8.   

    参考我的登录框保存密码方法。我是把帐号密码保存在一个xml中,参考我的代码。登录框帐号是一个combobox,密码是一个textbox,你可以自己换。
    private void comboboxx1_SelectedIndexChanged(object sender, EventArgs e)
            {
                //以下实现之前保存过密码,登陆自动填写相应密码
                  XmlDocument MyXML = new XmlDocument();
                  MyXML.Load("1.xml");
                  XmlNode Node = MyXML.DocumentElement;
                  string loginNames = comboboxx1.Text;
                  XmlNodeList nodes;
                  XmlElement root = MyXML.DocumentElement;
                  nodes = root.SelectNodes("//loginer[loginName = '" + loginNames + "']");
                  string strn = null;
                  string strpwd = null;
                  foreach (XmlNode xn in nodes)
                  {
                      XmlElement xe = (XmlElement)xn;
                      XmlNodeList nodech = xe.ChildNodes;
                      foreach (XmlNode xnch in nodech)
                      {
                          XmlElement xech = (XmlElement)xnch;
                          if (xech.LocalName == "loginName")
                          {                          strn = xech.InnerText; ;
                              if (strn == loginNames)
                              {
                                  XmlNode xnpwd = xech.NextSibling;
                                  strpwd = xnpwd.InnerText;
                                  
                              }
                          }
                      }
                  }
                  this.textBox1.Text = strpwd;
    XmlDocument MyXML = new XmlDocument();//formload时加载loginname到下拉列表
                MyXML.Load("1.xml");
    foreach (XmlNode list in MyXML.GetElementsByTagName("loginer"))
                     {
                        foreach (XmlNode info in list.ChildNodes)
                        {
                            if (info.Name == "loginName")
                            {
                                comboboxx1.Items.Add(info.InnerText);
                                
                            }                    }
                      }
    我保存密码的xml
      <?xml version="1.0" encoding="GB2312" ?> 
    - <login>
    - <loginer>
      <loginName>123</loginName> 
      <loginPWD /> 
      </loginer>
    - <loginer>
      <loginName>chazikai24</loginName> 
      <loginPWD>123456</loginPWD> 
      </loginer>
    - <loginer>
      <loginName>4</loginName> 
      <loginPWD /> 
      </loginer>
      </login>
      

  9.   

    SelectedIndexChanged事件,每次我从下拉框选择帐号,密码栏会跟着变化。
      

  10.   

    谢谢楼上代码。我根据名称是可以级联的。就是名称对应多个产品编号的时候有问题。
    我先选名称,然后出来好几个编号。这个时候我想在根据编号对其他COMBOBOX就行级联就有问题
      

  11.   

    用保存到xml的方法,你的3级联动就很容易实现啊,在我代码里加一段3第三级联动的代码就好了啊。
    这种联动一般都保存到xml中或者config的比较多。
      

  12.   

    用保存到xml的方法,你的3级联动就很容易实现啊,在我代码里加一段3第三级联动的代码就好了啊。
    这种联动一般都保存到xml中或者config的比较多。
    WINFORM有那玩意吗?
      

  13.   

    13楼我查出来了但是发现本来绑顶在COMBOBOX上的数据下拉都没了,有点问题自己在看看吧