2017-04-20 55 views
-4

我已經表明在點擊按鈕像下面父窗體上的新形式,如何在不禁用父窗體的情況下顯示新窗體?

enter image description here

這裏當一個新的子窗體被激活的背景父窗體被禁用。

是否有任何可用的選項來顯示子窗體而不禁用父窗體?

問候,

+1

你如何打開新表單? –

+3

使用'Form.Show()'而不是'Form.ShowDialog()'? –

+0

childForm.Visible或ChildForm.Show或childForm.ShowDialog – Amal

回答

-1

打開後的新形式,並呼籲this.Activate();將目光集中到父窗口上,但是這將導致其失去焦點的第二

+0

感謝您的解決方案。如果我們能夠防止父母的焦點丟失,那會更好。 – Amal

2

一小部分。如果它是完全禁用(沒有可能的交互),您在子窗體上使用.ShowDialog()而不是.Show()。如果你使用.Show(),你將能夠使用兩種形式

例子:

ChildForm childForm = new ChildForm(); 
childForm.Show(); 
+0

我可以與父窗體進行交互,但我不希望孩子被激活時父窗體禁用 – Amal

+1

@Amal然後寫信給微軟。命名一個應用程序,執行你的要求。 – john

4

Show功能顯示在非模態表格的形式。這意味着您可以單擊父窗體。

ShowDialog顯示形式模態,這意味着你不能去父窗體

Application.Run()運行主父窗體,使形成的主要形式。 Application.Run()通常在main中找到。

相關問題