2011-05-24 82 views
1

我在c#中創建了一個父窗體和一個子窗體,當我在父窗體中單擊一個菜單項時,它打開子窗體,但仍然訪問父窗體。父窗體將保持inaccesible,直到孩子的形式是open.please送我code.thnks子窗體打開時父窗體可訪問

+0

我們應該指定關閉含有「給我的代碼」問題,什麼原因? – khachik 2011-05-24 10:18:07

+0

可能重複[禁用父窗體時,子窗體活動](http://stackoverflow.com/questions/1130208/disable-parent-form-when-child-form-is-active) – TheVillageIdiot 2011-05-24 10:24:59

+0

@khachik,我認爲屬於「不是真正的問題」,但這些問題通常也是重複的。 – finnw 2011-05-24 11:01:19

回答

2

也許你應該使用form.ShowDialog()方法,而不是form.Show()

絕對你應該添加一個更好的描述,至少你使用框架(的WinForms?)。 C#不是一個框架。

3

嘗試用這種

form.ShowDialog() 
+0

不是頂級窗體的窗體不能顯示爲模式對話框。在調用showDialog之前,從任何父窗體中刪除窗體。當我使用ShowDailog()方法時顯示此錯誤消息 – 2011-05-24 10:18:01

+0

在這種情況下,您可以使用kalyan答案。這意味着,當您完成子窗體操作後,父窗體可以再次顯示出來 – Pankaj 2011-05-24 10:20:16

+0

您需要MDI子窗體還是普通窗體? (因此你得到的錯誤)。你如何使用兒童表格? – RvdK 2011-05-24 10:26:46

1

使用,form.Hide()進程,使父窗體被不可訪問,當過了子窗體打開並再次發出form.show()以激活父窗體。

0

如果您希望在顯示子窗體時顯示父窗體,則可以執行以下操作。

form.ShowDialog(this). 

其中this是您的父窗體的實例。

在另一方面,如果你希望你的父窗體隱藏,同時顯示子窗體,你可以做以下

this.Hide(); 
form.ShowDialog(this) 
相關問題