首页 文章

将数据从1个数据网格视图发送到另一个数据网格视图c#

提问于
浏览
0

当单击按钮时,我使用以下方法将表单中的所有行(form1的datagridview1)中的所有行发送到另一个表单的另一个数据网格视图(form2的datagridview1) .

private void button2_Click(object sender, EventArgs e)
        {
           Form2 f2 = new Form2();
            DataTable dt1 = new DataTable();
            f2.dataGridView1.DataSource = dt1;

            foreach (DataGridView row in dataGridView1.Rows)
            {
                int n = f2.dataGridView1.Rows.Add();
                foreach (DataGridViewColumn col in dataGridView1.Columns)
                {
                    f2.dataGridView1.Rows[n].Cells[col.Index].Value = dataGridView1.Rows[row.Index].Cells[col.Index].Value.ToString();

}
            }

        }

但没有数据发送到form2的datagridview1!我怎么能纠正这个?

1 回答

  • 0

    根据具体情况,我会使用数据源,即这种方式

    VB.NET

    Dim dt as New DataTable
    dt = ds.Tables(0)
    
    Me.DataGridView1.datasource = dt
    
    Form2.DataGridView2.datasource = dt
    

    C#

    DataTable dt = new DataTable();
    dt = ds.Tables(0);
    
    this.DataGridView1.datasource = dt;
    
    Form2.DataGridView2.datasource = dt;
    

    如果要独立修改其中一个,则需要第二个数据表:

    Dim dt2 as New DataTable
    dt2 = dt.Copy()   ' copies datatable structure AND the data
    Form2.DataGridView2.datasource = dt
    

相关问题