将数据网格视图单元格内容以其他形式 c# 添加到文本框中

本文关键字:添加 文本 其他 网格 数据网 数据 视图 单元格 | 更新日期: 2023-09-27 17:57:12

我有2种形式。一个有一个文本框来显示所选客户的名称,另一个具有数据网格视图来显示客户列表。当我单击文本框时,将打开第二个表单。我想知道是否可以双击数据网格视图单元格,然后文本框的文本由第一个表单上的数据网格视图所选单元格更改?这是我的代码。

我编写了以下代码来打开form2:

private void textBox1_Click(object sender, EventArgs e) 
{
    frmCustomer customer = new frmCustomer();            
    customer.ShowDialog();
}

在形式 2 中:

private void dataGridView1_CellDoubleClick(object sender,DataGridViewCellEventArgs e)
{
   string name =  dataGridView1.CurrentRow.Cells["clmName"].Value.ToString();
   form1 f = new form1();
   f.txtCustomer.Text = name;
   this.close();
 }

当 Form2 关闭时,文本框中没有任何内容。

有什么帮助吗?谢谢一百万

将数据网格视图单元格内容以其他形式 c# 添加到文本框中

在创建 Form2 时,可以尝试将 Form1 作为参数传递。

private void textBox1_Click(object sender, EventArgs e) 
{
    frmCustomer customer = new frmCustomer(this); // this represents the Form1           
    customer.ShowDialog();
}

然后在表格2上

private Form1 frm_1;
public Form2(Form1 frm)
{
    InitializeComponent();
    frm_1 = frm;
}
private void dataGridView1_CellDoubleClick(object sender,DataGridViewCellEventArgs e)
{
   string name =  dataGridView1.CurrentRow.Cells["clmName"].Value.ToString();
   frm_1.txtCustomer.Text = name;
   this.close();
 }

这将完成工作。

关闭第二个窗体不会将其释放。First Form 仍然可以访问其公共成员。
第二个窗体可以具有公共属性,该属性可以在关闭后通过第一个窗体访问。

请尝试以下操作:第一份表格应包含:

private void textBox1_Click(object sender, EventArgs e)
{
    frmCustomer customer = new frmCustomer();
    customer.ShowDialog();
    textBox1.Text = customer.Name;
    customer.Dispose();
}

第二种表格应包含:

public string Name { get; private set; }
private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
   Name = dataGridView1.CurrentRow.Cells["clmName"].Value.ToString();
   this.close();
}