【发布时间】:2009-10-09 02:12:50
【问题描述】:
我处理 WinForms 应用程序的旧方法是将所有逻辑都放入表单本身。
我正在尝试在我的 WinForms 应用程序中使用 MVC/MVP 实践。
有人可以向我展示一个如何将 MVC/MVP 与 ListView 结合使用的示例吗?我使用 ListView 本身的 Tag 属性来存储 ListView 中表示的对象。
我意识到这是一种不好的做法,并且使我与我的演示紧密结合,但我很难摆脱它。
例如,我有一个“战利品历史”列表视图,其中显示了我从 MMO 中战利品的列表。我使用每个新 ListView 项目的“Tag”属性来存储“Loot”对象本身。因此,当我在战利品中执行删除或搜索时,我会搜索此列表视图的标签。
处理这种情况的正确方法是什么?
我的控制器类是否应该持有我的战利品列表,并将其提供给我的表单?控制器是否实例化/拥有表单?如果不是,那么谁来实例化它?
【问题讨论】:
标签: winforms model-view-controller mvp