我正在製作一個應用程序,其中有一個主要的Form
FormMain和一個幫助程序Form
FormHelper。重新打開使用ShowDialog()顯示的封閉窗體()
爲了理解,我們舉一個例子,在FormMain中,用戶輸入訂單,用戶經常想打開FormHelper並填寫一些值。
當訂單被保存時,FormMain中的值和FormHelper一起保存。
我所做的就是讓表單助手字段中FormMain的定義:
public partial class FormMain : Form
{
FormHelper BillsForm;
}
而且,在構造函數中:
public FormReceiptNew(string ReceiptNo)
{
InitializeComponent();
BillsForm = new BillsForm();//just once
}
現在假設用戶,卻使FormMain,想要在FormHelper中輸入一些值,他/她可以按ALT + H,並且表格將使用ShowDialog()
顯示,並且當它完成時,用戶將關閉FormHelper,並且同樣的過程將發生多次FormHelper所需。
我希望同一個表單打開多次的原因是用戶正在填充某些值,並且我想在下一次再次顯示FormHelper時以及完全完成用戶時保留這些值的FormMain,在FormMain的值將隨着在FormHelper.So值當用戶按下ALT + H每次被保存,下面的代碼將不起作用:
BillsForm= new FormHelper();
BillsForm.ShowDialog();
,因爲它是創建一個新形式所有舊值都將被刪除。
只要不寫BillsForm = new FormsHelper(),問題就解決了。 – 2011-06-14 04:50:45
@如果表單較早關閉,該怎麼辦?再次調用ShowDialog()會使它再次出現? – 2011-06-14 05:41:32
@Hans,你能否提供你所寫的內容的解釋? – 2011-06-14 14:15:23