2010-08-11 67 views
3

我有一個開放模式對話框並重新打開一個模態對話框在這個對話框中(與ShowDialog的)現在的母模態對話框的問題是沒有鎖定,當我點擊它時,第二個模式對話框,它移動到後臺。當我關閉第一個模式對話框時,第二個仍然保留在桌面上。我怎樣才能防止這種行爲或這種情況下的問題?的WinForms:在打開第二個模式對話框已打開的模態對話框

+1

這不是'ShowDialog'應該如何工作。你可以粘貼你的代碼來演示問題的一部分嗎? – 2010-08-11 16:45:17

回答

6

確保您已設置對話框的所有者屬性。這告訴WinForms/Win32當新窗口變爲模態時禁用哪個窗口。做這樣的事情:

secondDialog.Owner = firstDialog; 
secondDialog.ShowDialog() 

或者,嘗試調用secondDialog.ShowDialog(firstDialog),這應該設置所有者鏈爲您服務。

+1

+1你應該總是將一個擁有者參數傳遞給'ShowDialog' – 2010-08-11 16:57:05