我正在开发GYM桌面应用程序。 这里使用Product Entry表单,我将数据插入数据库表中。当我点击“获取数据”按钮时,所有记录都以不同的形式(Product_List)显示在datagridview中。 现在双击任何特定行(在Product_List表单中)我想在我当前活动的Product_Entry表单中获取该特定行的数据,因此我可以更新或删除数据。 那么如何才能在当前有效的产品报名表中获取该行的数据?
这是关于datagridview中行鼠标double_click的代码:
private void dataGridView1_MouseDoubleClick(object sender, MouseEventArgs
e)
{
Product_Entry pe = new Product_Entry();
pe.textBox1.Text =
dataGridView1.CurrentRow.Cells[0].Value.ToString();
pe.textBox2.Text =
dataGridView1.CurrentRow.Cells[1].Value.ToString();
pe.comboBox1.Text =
dataGridView1.CurrentRow.Cells[2].Value.ToString();
pe.comboBox2.Text =
dataGridView1.CurrentRow.Cells[3].Value.ToString();
pe.textBox3.Text =
dataGridView1.CurrentRow.Cells[4].Value.ToString();
pe.textBox4.Text =
dataGridView1.CurrentRow.Cells[5].Value.ToString();
pe.textBox5.Text =
dataGridView1.CurrentRow.Cells[6].Value.ToString();
pe.textBox6.Text =
dataGridView1.CurrentRow.Cells[7].Value.ToString();
pe.ShowDialog();
}
答案 0 :(得分:0)
使用全局变量可以解决这个问题。声明一个全局变量
public static string ProductId= "";
形式的datagridview
。然后在dataGridView1_MouseDoubleClick
事件中设置您的productId
private void dataGridView1_MouseDoubleClick(object sender, MouseEventArgs e)
{
ProductId = dataGridView1.CurrentRow.Cells[0].Value.ToString();
Form2 frm2 = new Form2(); //your second form
frm2.Show();
}
然后以第二种形式(您要在其中显示值)收到ProductId
事件中的Form2_Load
,例如
private void Form2_Load(object sender, EventArgs e)
{
label1.Text = Form1.ProductId; //label is your control to show data
}
像这样,您可以接收第二种形式的所有数据,或者您可以使用database query
撰写productid
来从database
获取数据。更多see this