2008-10-11 37 views

回答

1

被稱爲模型 - 視圖 - 演示在許多模式的確切職責變化。主要是他們對主持人的觀點施加了多少控制。 Martin Fowler在其關於GUI Architectures的章節中對多種不同的變體進行了深入討論,非常值得一讀。

查看Presenter First,因爲它處理適配器和一些深度的責任。

Passive ViewSupervising Controller值得一看。

模型(或域模型)==參與系統的實體的邏輯表示,包括他們的狀態和行爲

主持人==偵聽來自視圖的事件(可能型號)和服務這些請求,轉換模型類型到視圖類型(被動視圖)中,這實際上是爲了隱藏視圖和模型彼此。對用戶的刺激作出反應。

觀點==演示:用戶可以交互模型的可視化表示,收集用戶輸入

你周圍的回調並得到網格單元格樣式的具體問題都將涉及該視圖處理事件從網格中提取事件並將事件提交給主持人以請求操作或從模型中檢索數據。對於單元格內容更新時的回調(這需要發佈給演示者,以便演示者可以驗證模型中的更改並在模型中進行更改),這非常適用於回調。
對於網格單元格樣式,我認爲視圖中的某種適配器可能需要將模型中的狀態(通過視圖中的事件檢索到呈現器)轉換爲網格單元格樣式信息。這可能發生在演示者中,但我個人更喜歡演示者不要在視圖中瞭解小部件。

0

如果樣式和單元格的值我正確理解你,網格是視圖實現的一部分,對主持人不可見。在這種情況下,演示者不需要知道數據的顯示方式,只需知道如何提供數據。

我可能會創建一個幫助器類,一個網格通信的某種適配器。網格除了這個幫助者之外什麼也看不到,同樣的看法。

的合作會是這樣的:

電網< - 幫手< - 視圖< - >主持人

相關問題