c# - MVP 和丰富的用户界面

标签 c# mvp

我想为我的应用程序实现 MVP 模式。 实际上是 MVP 被动 View 。所以我遇到了一个问题,这很简单, 但不能决定我应该走哪条路,所以 我想请教各位大师,如何正确使用 MVP 并显示丰富的 UI。

我的意思是,假设我们需要显示一些数据,而客户希望它是 TreeView。 有要求,如果用户选择不同的树节点,则应用程序会自行更新 新数据或类似的东西。 在这一点上,我不确定如何实现 View 。 (所有 View 逻辑都交给演示者)

我不认为公开 WinForms 类是个好主意

ISomeForm : IView {
 //Presenter will take control of this TreeView.
 TreeView Host {
  get;
  }
}

或公开我的数据模型

ISomeForm : IView {
 //View knows how to display this data
 List<MyDataNodes> Items {
  get;
  set;
 }
}

或使用其他 View 界面。

ISomeForm : IView {
 //Presenter knows what Views presenter should display.
 List<IDataView> Items {
  get;
  set;
 }
}

有什么建议吗?

最佳答案

我会选择 View 界面。

在 WPF MVVM 中, View 分离越多,沿途管理 UI/逻辑交互就越容易。

关于c# - MVP 和丰富的用户界面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7193056/

相关文章:

c# - 在 JSON 响应中指定类类型

asp.net - 有人深入了解 ASP.NET WebFormsMVP 吗?

java - Android 应用程序中的 MVP - 演示者状态

c# - MVP,应该在 Main() 中创建 Presenter 还是 View

java - 如何在模型 View 呈现器模式中使用存储库模式和交互器模式?

c# - 如何使用 C# 在 sql 表中生成自动生成和自动更正的列

c# - Autofac - 解决多线程环境中的依赖关系

java - 使用 Dagger 2 进行 Presenter 注入(inject)

c# - 仅在其他机器上的 MySQL 语法错误

c# - Windows 8 商店应用程序 C# 中的 OpenGL 支持