我有一个View
基类,派生自我用于所有视图的UserControl
。它允许以后为我的所有视图添加共享功能,而无需重复代码。我现在已达到一个级别,我有一个应用程序,其顶级视图只包含'NavBarView'和'WorkingView'。后者是空的,只是MEF插件提供的其他子视图的主机。
我的问题是,是否足以在应用程序的MainWindow
'视图'中托管这两个视图,或者我应该创建一个包含它们的ShellView
,并将其视为唯一的MainWindow
的孩子?
答案 0 :(得分:0)
不要忘记,(MVVM,MVC,MVP等)的目的是暴露可测试的UI。在我的MVP WinForms应用程序的情况下,我简单地抽象了实际显示视图的实现(如在底层的Forms等)。我建议MainWindow
足以引导,但如果你打算在其中加入实质逻辑,那么请使用ShellView
以便稍后测试该逻辑。对我来说,这听起来好像很薄,我个人会从MainWindow
开始起床和跑步。你以后总是可以重构。