在带有选项卡的 Winforms 的模型视图演示器中应该使用多少个演示器?
Posted
技术标签:
【中文标题】在带有选项卡的 Winforms 的模型视图演示器中应该使用多少个演示器?【英文标题】:How many presenters should be used in Model View Presenter with Winforms with tabs? 【发布时间】:2011-06-09 16:37:07 【问题描述】:我有一个带有与业务实体相关的选项卡的表单 - 例如一个Person有传记数据、地址数据等。每个选项卡处理一个Person数据类别的输入/编辑,每个选项卡可以独立保存。应该为所有选项卡使用一位演示者,还是每个选项卡使用一位演示者?也可能有一个主选项卡,可以导航到其他选项卡(基于所选数据的类别)。
【问题讨论】:
【参考方案1】:在我看来,这里发生的合乎逻辑的事情是您正在处理一个人的数据。 UI(即视图)是否使用选项卡、电子表格或统一的条目控件列表对演示者来说是偶然的。
视图应该负责在选项卡之间切换、从演示者发送数据以及将演示者提供的数据放置在正确的位置。
presenter 获取视图发送给它的数据,并进行任何需要的验证并存储它。它还负责在收到新数据时更新视图。
这样,如果选项卡界面不起作用,则可以通过让新 UI 实现视图界面来轻松切换。
如果只更新一个选项卡很重要,那么可以使用类别的概念来设计演示者。作为演示者逻辑的一部分,它告诉视图只更新一类数据。
在统一的输入表单上,这将表现为仅表单更新的一部分。在您在原始帖子中提到的选项卡式表单上,这将导致一个选项卡更新。
在类的数量和它们的功能之间取得平衡很重要。对少数人来说,他们正在做很多事情,这些事情在未来的维护中很难分开。太多了,他们的关系会变得混乱,使未来的维护变得复杂。
【讨论】:
【参考方案2】:我为每个视图创建一个演示者。如果每个选项卡都是一个单独的视图,那么每个选项卡都有自己的演示者。
【讨论】:
以上是关于在带有选项卡的 Winforms 的模型视图演示器中应该使用多少个演示器?的主要内容,如果未能解决你的问题,请参考以下文章