English 中文(简体)
在使用名单时,如何使用Winforms的MVC模式?
原标题:How would you use the MVC pattern with Winforms when it comes to using ListViews?
  • 时间:2009-10-09 02:12:50
  •  标签:

我处理WinForms申请的老方法正在把所有逻辑变成形式本身。

我试图利用MVC/MVP与我的WinForms申请的做法。

一个人能举一个例子,说明我如何使用MVC/MVP与口号一起使用名单? 我利用名单上的塔格财产储存在清单中所代表的物体。

我认识到,这是一种坏的做法,我的发言对我来说很紧,但我没有遇到麻烦。

例如,我有一份“Loot History”清单,显示我从一个MO中抢掠的物品清单。 我正在使用每件新清单的“Tag”财产储存“Loot”物品。 因此,当我删除或搜查了第1号记录片时,将搜寻这份清单的标的。

处理这种情况的正确方式是什么?

我的控制权阶层是否应当被列入我的空闲物品清单? 管制人员是否即时/掌握形式? 如果没有,那么谁会立即这样做?

问题回答

首先,你们需要决定什么模式。 MVC和MVP略有不同。 查阅 详细概述彼此之间的差异。

MVP进一步分为两个变数:,Supervising Presenter/Controller。 我倾向于更倾向于被动地看待,但并非不常见的做法是,在我的工作中,找到一些监督员/主计长。 我喜欢“被动观点”的理由是,它把尽可能多的编码从“国际倡议”中删除,并分成可以更容易地进行单位测试的单独班级。 通行证 观点oil倒了把数据业务交给提交者,后者通常进一步降低对域标的责任。 (不应与C#代表混为一谈,尽管这是实现这一点的一种方式)

诸如名单文、数据GridView(及其前身数据Grid)和树木意见等复杂的国际数据系统控制可以成为MVP被动观点的障碍,特别是(监督提交者/主计长通常可以使用具有约束力的数据来处理这种情况)。

  • They display multiple distinct data values that may coincide with a the attributes of a single domain object or multiple domain objects.
  • They rarely have fine grained events to handle updating individual data values.

有时,最佳行动方针是找到显示数据的替代方法。 在某些情况下,你可以以表格和导航控制取代显示多个相关数据。 在其他时候,它并不明确。 在我自己的经历中,我成功地利用塔格财产来提及该清单所代表的领域,而没有观点知道它储存的数据类型。 我通过将物体的田地作为系统类型和物体本身作为平原系统来做到这一点。 反对在观点中采用添加()的方法。

在观点中形成一种无法测试的方法似乎与多国企业的整体点背道而驰,但实际上只是多重特性的一组。 这种方法内没有数据操作或计算。 因此,几乎无法进行试验。

希望这一帮助。





相关问题