从一个窗体的DataGridView中传当前选中这行数据到另一个窗体中

从一个窗体的DataGridView中传当前选中这行数据到另一个窗体中

  • Form1中添加一个DataGridView控件和一个按钮控件,在按钮事件中写一下代码:
 private void button1_Click(object sender, EventArgs e)
        {
            if (this.dataGridView1.SelectedRows.Count > 0)
            {
                var dev1 = this.dataGridView1.CurrentRow;
                changeForm ch = new changeForm(dev1);
                ch.ShowDialog();
            }
            else
                MessageBox.Show("error");
        }
  • 在另外一个窗体中接收Form1中传过来的数据显示在几个TextBox中

在这里插入图片描述

假设您的主窗体一个按钮,点击该按钮会打开一个窗体,该新窗体一个 TextBox 和一个按钮,您可以按照以下步骤将 TextBox 数据写入到主窗体DataGridView : 1. 在主窗体,为 DataGridView 绑定数据源(可以是 DataTable 或任何实现了 IList 接口的集合类)。 ```csharp private void Form1_Load(object sender, EventArgs e) { // 创建 DataTable 对象 DataTable table = new DataTable(); table.Columns.Add("姓名"); table.Columns.Add("年龄"); // 绑定数据dataGridView1.DataSource = table; } ``` 2. 在新窗体,添加一个公共属性,用于获取 TextBox 数据。 ```csharp public partial class Form2 : Form { // 公共属性,用于获取 TextBox 数据 public string InputText { get { return textBox1.Text; } } public Form2() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { // 点击按钮时,关闭窗体 this.Close(); } } ``` 3. 在主窗体,添加打开新窗体的按钮的事件处理程序,通过该事件处理程序打开新窗体,并将 TextBox 数据写入到 DataGridView 。 ```csharp private void button1_Click(object sender, EventArgs e) { // 创建新窗体对象 Form2 form2 = new Form2(); // 显示新窗体 form2.ShowDialog(); // 获取新窗体数据 string inputText = form2.InputText; // 将数据写入到 DataGridView DataTable table = dataGridView1.DataSource as DataTable; table.Rows.Add(inputText, 0); } ``` 上述代码,我们首先创建了一个窗体对象,并显示该窗体。在新窗体输入数据并点击按钮后,新窗体会关闭,并将 TextBox 数据通过公共属性传递给主窗体。主窗体接收到数据后,将其添加到 DataGridView数据。请注意,我们在将数据添加到 DataTable 时,将年龄设置为 0,因为我们没有在新窗体输入年龄。如果您需要输入年龄,可以在新窗体添加一个 TextBox,类似地获取数据并将其添加到 DataTable
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值