我有一个 View
基类,派生自 UserControl
,我将它用于所有 View 。它允许稍后将共享功能添加到我的所有 View 中,而无需重复代码。我现在已经达到了一个水平,我有一个应用程序,其顶级 View 仅包含一个“NavBarView”和一个“WorkingView”。后者是空的,只是 MEF 插件提供的其他 subview 的宿主。
我的问题是,在应用程序的 MainWindow
“ View ”中托管这两个 View 是否足够,或者我应该创建一个包含它们的 ShellView
,并且是否只是 MainWindow
的唯一子节点?
最佳答案
不要忘记,(MVVM、MVC、MVP 等)的目的是公开可测试的 UI。在我的 MVP WinForms 应用程序案例中,我只是抽象了实际显示 View (如底层表单等)的实现。我建议 MainWindow
足以进行引导,但如果您打算在其中放置大量逻辑,则使用 ShellView
以便稍后测试该逻辑。对我来说,这听起来好像很薄,我个人会从 MainWindow
开始启动并运行。您以后可以随时重构。
关于c# - ShellView 或 MainWindow 作为应用程序中的主视图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21478543/