我正在制作一个应用程序,其中有一个主Form
FormMain 和一个助手Form
FormHelper。
为了便于理解,举个例子,在 FormMain 中,用户正在输入订单,并且用户经常想要打开 FormHelper 并在其中填写一些值。
保存订单时,FormMain 中的值以及 FormHelper 中的值都会被保存。
我所做的是使 FormHelper 成为 FormMain 定义中的一个字段:
public partial class FormMain : Form
{
FormHelper BillsForm;
}
并且,在构造函数中:
public FormReceiptNew(string ReceiptNo)
{
InitializeComponent();
BillsForm = new BillsForm();//just once
}
现在假设用户在填写 FormMain 时,想在 FormHelper 中输入一些值,他/她可以按 ALT+H 并显示 Form ShowDialog()
,完成后,用户将关闭 FormHelper,同样的过程将发生多次 FormHelper 是必需的。
我希望多次打开同一个表单的原因是用户正在其中填写某些值,并且我想在下次再次显示 FormHelper 以及用户完全使用 FormMain 时保留这些值, FormMain 中的值将与 FormHelper 中的值一起保存。因此,当用户每次按 ALT+H 时,以下代码将不起作用:
BillsForm= new FormHelper();
BillsForm.ShowDialog();
因为它正在创建一个新表单,所有旧值都将被删除。