我正在向旧应用程序中的复杂表单添加一些功能。它已经拥有一个巨大的表单,其中包含大量控件和选项卡以及 cs 文件背后的巨大代码。我试图避免创建一个巨大的 View /演示者。为表单的每个功能添加 View (和演示者)是一个好习惯吗?还有更好的解决办法吗?由于用户的要求,我无法将表单分成多个表单。
表单定义如下所示,
public partial class frmMyForm
: IView1, IView2, IView3, IView4, IView5,
IView6, IView7, IView8, IView9, IView10
{
....
每个IViewN
都有不同的功能 - 例如,一种用于可视化数据变化比较,一种用于在网格中显示数据,一种用于汇总统计......
为什么这篇文章被否决了?评论说出你的理由。 如果您不知道 MVP 是什么,请不要否决该问题。
最佳答案
没有任何内容表明表单、 View 和演示者之间存在一对一的关系。事实上,将表单的各个部分分解为多个“ View ”(我最常在用户控件中看到这种情况;但不一定非得如此)并且每个 View 都有一个演示者,这是完全合理的事情。最常见的是,表单就是 View ;但同样,这不是强制性的。
正如你所说,这意味着避免一些可怕的全见\全能的 Presenter,这应该会导致代码更具凝聚力并减少单元测试的麻烦。
关于c# - MVP:一种复杂表单(winforms)的多个 View /演示者?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11943015/