将数据表从一种形式传递到另一种形式

时间:2017-08-07 09:31:42

标签: c# .net winforms

我想将数据表复制到另一个表单。

Form1.cs的

public DataTable Data1
{
    get { return dtDetailsAll; }
}

Form2.cs

Form1 m = new Form1();
dtSessionst = m.Data1.Copy();

然而,它并没有复制这些值。你能帮帮我吗?

1 个答案:

答案 0 :(得分:0)

Form1中的Form2.cs实例错误。使用关键字new

Form1 m = new Form1();

您创建的新实例与存在完整DataTable Data1的实例不同。

解决方案:您需要将正确的实例传递给Form2

1)在Form2中创建第二个构造函数,可以将Form1作为参数

2)将其保存在类字段中:

private Form1 frm1;
public Form2(Form1 f1)
{
    frm1 = f1;
    InitializeComponent();
}

3)现在您可以使用此变量访问Data1

dtSessionst = frm1.Data1.Copy();