我正在制作Windows应用程序。
我要求我需要从Button click事件打开一个弹出窗体,我可以通过下面的代码打开该窗体
Form2 frm = new Form2();
frm.ShowDialog();
此弹出式表单Form2
是数据输入表单,将从Form1
调用。 Form2
是数据输入表单。当我填写Form2
中的字段并单击“保存”按钮时,所有值都将填入Form1's
网格中。
此网格也有编辑和删除按钮。
我该怎么做?我必须在xml文件中保存数据并从中恢复,但我不想这样做。
任何人都可以使用示例代码建议任何其他方式吗?
答案 0 :(得分:1)
您可以在public properties
中设置一些form
来获取和设置数据。
Form2 frm = new Form2();
frm.FirstName = "John";
frm.ShowDialog();
string newFirstName = frm.FirstName;
答案 1 :(得分:0)
这样,您可以从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();
答案 2 :(得分: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;
}