1

我正在制作 Windows 应用程序。

我有要求,我需要从按钮单击事件中打开一个弹出表单,我可以通过下面的代码打开该表单

Form2 frm = new  Form2();
frm.ShowDialog();

这个 Popup 表单Form2是数据输入表单,这将被调用 from Form1Form2是数据录入表格。当我填写字段Form2并单击保存按钮时,所有值都将填充到Form1's网格中。

这个网格也有编辑和删除按钮。

我怎样才能做到这一点 ?我必须将数据保存在 xml 文件中并从中检索,但我不想这样做。

任何人都可以用示例代码建议任何其他方式吗?

4

3 回答 3

1

你可以有一些public properties在你form的获取和设置数据。

Form2 frm = new  Form2();
frm.FirstName = "John";
frm.ShowDialog();

string newFirstName = frm.FirstName;
于 2012-10-23T07:02:02.683 回答
0

n 这样,您可以从 Form2 到达 Form1。

public class Form2
{
    private Form1 _instance;
    public Form2(Form1 instance)
    { 
          _instance = instance;   
    } 

    public void Save()
    {
         _intance.FillMethod();
    }
}

// this = form1 instance
Form2 frm = new  Form2(this);
frm.ShowDialog();
于 2012-10-23T07:43:52.120 回答
0

如果您的数据输入表单需要一些数据,那么最好通过构造函数传递数据。其他数据可以通过属性甚至方法传递。使用属性是返回数据的最佳方式。

using(Form2 fom2 = new Form2(requiredData))
{
    form2.OtherData = optionalData;
    if (form2.ShowDialog() != DialogResult.OK)
        return;
    // read data from dialog form
    grid.DataSource = form2.Data;
    textBox.Text = form2.SomeString;
}
于 2012-10-23T08:00:22.117 回答