2011-03-26 65 views
-1

我有一個管理員窗體,並在這種形式很多的菜單項和所有打開一個新的窗體。但是當我再次打開一個新的,我將打開一個新的從那時起,新的表單將被打開,但舊的表單不會被關閉。有許多表單以管理員的形式打開。當我打開任何窗體時點擊一個菜單項,另一個窗體關閉。關閉窗體從mdi父母當我點擊打開任何其他形式

+0

可能重複[關閉窗體從mdi父母,當我點擊打開任何其他窗體](http://stackoverflow.com/questions/5442297/close-the-form-from-mdi-parent-when-i-click-to-open任何其他形式) – 2011-03-26 15:48:42

+0

重複相同的問題,期待不同的答案是毫無意義的。 – 2011-03-26 15:50:29

回答

0

只要你必須知道每個窗體對象,然後就可以關閉它,例如當你想打開你寫

new MyForm().ShowDialog(); 

好了一個窗口,而不是您可以在管理員的頂部聲明一個表單對象形式:

Form oldForm; 

當用戶按你的形式之一名單:中

if (oldForm != null) 
    oldForm.Close(); 
Form newOne = new UsersForm(); 
oldForm = newOne; 
newOne.ShowDialog(); 
+0

哦DDD我想代替newOne.ShowDialog frm.MdiParent = this; frm.Show();但是當一個新表格打開時,以前的表格已經關閉,但新表格未到達確切的位置,其位置不是固定位置。 – vivek 2011-03-26 17:33:57

+0

是否有任何幫助? – vivek 2011-03-26 17:59:40

+1

我不明白?但是,如果你願意,你可以只在一次打開一個表單,並通過使用form.ShowDialog(this)來防止用戶打開另一個表單。而不是form.Show();如果用戶單擊AdministartorForm上的一個按鈕,將出現一個對話框,並且用戶無法單擊另一個按鈕,直到他關閉前一個按鈕。我認爲這對你更好。 – 2011-03-28 08:11:11

相關問題