2017-02-23 38 views
1

我關閉形式C#如何正確關閉表單?

loginForm.Close(); 

然而,在那之後我可以再打開它,下面不工作:

loginForm.ShowDialog(); 

這是爲什麼?

+0

close表示處理表單。爲了得到它,你必須重新創建。嘗試隱藏它而不是關閉 –

回答

2

最有可能的底層句柄不會提到在構造函數中運行的任何東西將不會再次運行。 Plus對話框是一個特殊的野獸,可能有內部標誌來指示模態完成。

在關閉後掛在窗口上通常是個壞主意。也許隱藏和顯示這個窗口更符合你的喜好?

+0

只是試了一下,非常快。但是,當用X按鈕關閉時,它不會再顯示? – Cher

+1

單擊「X」按鈕關閉表單。 – recursive

+0

@recursive那麼我能做些什麼呢?我不能阻止用戶這樣做 – Cher