繁体   English   中英

如何将comboBox中选定值的数据从一种形式传输到另一种形式

[英]How to transfer data of selected value in comboBox from one form to another

我有winform用comboBox来显示公司的信息,而comboBox现在可以显示该公司的代表。如果我选​​择这些代表之一,并单击选定代表的“编辑”按钮,则另一个表格应与该代表的信息一起出现,以允许我修改信息; 公司表和委托表之间的公共密钥是id,所以该怎么做?

这是我的编辑公司形式代码

     delIdVar = Convert.ToInt32(compDelcombox.SelectedValue);              
     DelEditFrm delEditFrm = new DelEditFrm(delIdVar);
     delEditFrm.Show();

这是委托编辑表单的构造函数的代码

public DelEditFrm(int delIdVar)
  {
     InitializeComponent();
     int delId = delIdVar; 
  }

最后这些代码用于将列数据加载到我的委托编辑表单加载事件中的textBoxes中

     private void DelEditFrm_Load(object sender, EventArgs e)
        {
            try
            {
                cn.Open();
                cmd = new SqlCommand("select delName,delAdd,delPhone1,delPhone2 from delegate where delId= ' delId  '", cn);
                dr = cmd.ExecuteReader();
                dr.Read();
                delEditNametxt.Text = dr["delName"].ToString();
                delEditAddtxt.Text = dr["delAdd"].ToString();
                delEditPhone1txt.Text = dr["delPhone1"].ToString();
                delEditPhone2txt.Text = dr["delPhone2"].ToString();
            }
            catch(SqlException ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                dr.Close();
                cn.Close();
            }
        }  

当我尝试编辑选定的委托时,它给我一个异常“将varchar值'delId'转换为数据类型int时转换失败”,但表中的dilId列为int类型

基本思想是:

  1. 将委托映射到ID。 (如果它确实是数据库,则可以存储或查询)
  2. 选择委托后,触发该ID的查找并填充对话框的字段。 (再次,查找或查询)
  3. 关闭该对话框时记录更改。 (对该项目进行修改)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM