這是代碼的快照我的ShowDialog不堵父窗體
Login form = new Login();
form.ShowDialog();
SomeMethod();
我希望它運行SomeMethod()
只有當登錄表單被關閉,但是這似乎並不如此。
我在登錄表單中有一個按鈕,但每當按鈕被點擊時,它只是存在表格並執行SomeMethod()
。我沒有在登錄表單中的任何地方撥打this.Close()
,所以我不知道爲什麼會發生這種情況。
這是代碼的快照我的ShowDialog不堵父窗體
Login form = new Login();
form.ShowDialog();
SomeMethod();
我希望它運行SomeMethod()
只有當登錄表單被關閉,但是這似乎並不如此。
我在登錄表單中有一個按鈕,但每當按鈕被點擊時,它只是存在表格並執行SomeMethod()
。我沒有在登錄表單中的任何地方撥打this.Close()
,所以我不知道爲什麼會發生這種情況。
當您打開一個表格使用ShowDialog()
時,只要找到DialogResult(最有可能一些登錄按鈕具有DialogResult屬性設置),它就會退出。
Login form = new Login();
if(form.ShowDialog() == DialogResult.OK)
{
SomeMethod();
}
else
{
}
如果你想鴕鳥政策的形式關閉,然後打開與Show()
方法,做任何你需要登錄表單中:如果你想的someMethod()只在某些情況下,你必須來管理,然後執行。
不知道是什麼問題。您顯示的代碼將在表單關閉後執行,這是預期的行爲。如果問題是單擊按鈕時表單關閉的原因,則很可能按鈕具有['DialogResult'](https://msdn.microsoft.com/en-us/library/system.windows.forms.button .dialogresult(v = vs.110).aspx)屬性集。 –