2014-09-29 80 views
0

我在Windows窗體中使用MVC。我有一個關於MVC中嚮導/對話框/ error_msgs的問題,我應該在哪裏調用嚮導/對話框/ error_msgsMVC Windows窗體

i。從控制器顯示
ii。通知視圖從控制器顯示對話框/嚮導/ error_msg

哪種方法是正確的?

class Controller 
{ 
    IView view; 

    public void DoSomthing() 
    { 
     // i) approach 

     Wizard wz = new Wizard(); 
     wz.Show(); 

     MessageBox.Show("Error while DoSomething"); 


     // ii) approach 

     view.ShowWizard(); 

     view.ShowErrorBox(); 
    } 
} 
+1

請解釋「wizards/dialogs/error_msgs」的含義和Wizard類是什麼。不知道它是什麼,我們不知道什麼時候該被調用。 – 2014-09-29 13:11:08

+0

@StealthRabbi對話框可以是FileOpen對話框,它將在按鈕單擊時顯示給用戶,如果在控制器中執行操作時有任何錯誤,那麼我們可以向用戶顯示錯誤框,所以我問的是我應該在哪裏編寫這兩種場景的代碼 – 2014-09-29 13:21:48

回答

1

雖然我與@同意StealthRabbi的評論,你應該更具體,解釋什麼是wizards/dialogs/erros_msgs,從你的代碼我想,你想知道,你是否應該直接創建和controller或顯示Wizard窗口要求view來顯示它。 顯然答案是ii)選項,所有UI相關的東西應該由view完成。顯示Wizard窗口是UI相關的東西,所以controller不應該直接創建Wizard,而是要求view這樣做。所以你的代碼應該是這樣的

class Controller 
{ 
    IView view; 

    public void DoSomthing() 
    { 
     // ii) approach 

     view.ShowWizard(); 

     view.ShowErrorBox(); 
    } 
} 
+0

謝謝你的回答,你的設想對我的問題是正確的:) – 2014-09-29 13:54:17