[英]In MVP design pattern, can a view have more than one presenter?
我研究了MVP的例子。 我找到的所有例子都沒有復雜的表格。 在現實生活中,表格可能變得非常復雜(特別是如果您工作的客戶不理解“單一責任原則”)。
記住這一點,下面的例子是否符合MVP原則?
表單代碼 - 表單實現兩個接口,每個接口一個。
public partial class ExampleForm : Form, ILookupView, IExampleView
{
//Constructor
public ExampleForm()
{
InitializeComponent();
var presenterEquipment = new EquipmentPresenter(this);
presenterEquipment.PopulateEquipmentLookup();
var presenterMain = new ManageComponentsPresenter(this);
presenterMain.SetInitialValues();
}
}
如果不是處理大型復雜表格的最佳方式是什么?
非常感謝。
我會將視圖拆分為較小的視圖,實現為用戶控件並組成小視圖的大視圖。
但是,從技術上講,我沒有看到任何原因導致您的方法不起作用。 您可以讓大視圖實現多個接口,並將多個演示者分配給不同的“子視圖”。
我的理念是讓設計模式與您的應用程序的需求相匹配。 我對MVP,MVC的理解也在不斷增長。 回答你的問題雖然MVP模型之間的關系是。
One View有一個Presenter可以與零個或多個模型進行對話。 如果您需要為一個視圖使用多個Presenter,則可能出現這種情況,這些視圖很可能被分離為較大視圖導入的較小子視圖。 或者存在可以分離出一個或多個模型的業務邏輯
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.