我在使用文本框中的值填充我的Dropbox时出现问题。 我在这个论坛上搜索过,但没有一个答案可以满足我的需求。 所以: 我有两张相关的表:
表A. ID1项目有效
表B. ID2 ID1名称地址
当我双击dataGridView时,它会打开一个表单(Form1)(带有锁定的控件)并向用户显示以下数据:
ID2(文本框) 名称(表A)(文本框) 项目(表B)(文本框) 地址(文本框)
在这种形式中,我有一个按钮(btn_edit),当我点击该按钮时,它会打开一个新表单(Form2)(带有解锁控件)并向用户显示相同的数据,但是用户可以编辑数据,包括用于更新项目的Dropbox(TableA):
ID2(文本框)锁定控件
名称(表A)(保管箱)
项目(表B)(文本框)
地址(文本框)
但是,当我点击btn_edit时,Dropbox是可编辑的,但所选的值不是Form1具有的文本框值。
因此,这里是Form1中的代码,用于向用户显示数据:
private void btn_edit_Click(object sender, EventArgs e)
{
Form2_Edit f = new Form2_Edit();
f.txtid1.Text = txtid1.Text;
f.txtname.Text = txtname.Text;
f.txtaddress.Text = txtaddress.Text;
string s = txtitem.Text;
string query = "SELECT TabelA.ID1 FROM TableB INNER JOIN TableA ON TableB.ID1 = TableA.ID1 WHERE '" + s + "' = TableA.Item";
SqlConnection cs = new SqlConnection("Data Source=.\\SQLEXPRESS;Initial Catalog=MyDB;Integrated Security=True");
SqlDataAdapter da = new SqlDataAdapter();
da.InsertCommand = new SqlCommand(query, cs);
cs.Open();
object value = da.InsertCommand.ExecuteScalar();
cs.Close();
f.cmbItem.SelectedValue = value.ToString();
f.Show();
}
结果是一个dropbox填充了TableA中的所有值,其中SelectedValue是表的第一个。
任何想法或帮助?
对不起我的唠叨问题。