use*_*165 5 c# wpf design-patterns controller mvvm
我开发了一个WPF应用程序.我有一个继承自Window的主窗口,一个tabcontrol和这个tabcontrol中的许多tabitems继承自UserControl.每个tabitem都有自己的cs文件,我用C#编写所有的businesslogic,以及一个完成UI开发的XAML文件.我还有一个带有数据库的SQL Server,我连接到LINQ.
所以我必须写一下我选择在我的应用程序中使用哪个控制器.这是我感到困惑的地方,因为我没有手动编程控制器,我认为ViewModel在我的情况下会像控制器一样.这可能是正确的吗?ViewModel可以像控制器一样运行吗?
小智 7
甲控制器可以发送命令到它的相关联的视图改变视图的模型的呈现(例如,通过经由一个文档滚动).它还可以向模型发送命令以更新模型的状态(例如,编辑文档).Model_View_Controller
的视图模型是一个表示它是兼作在视图中,这是视图数据绑定的目标的模型之间进行调解的视图的抽象"的视图模式".它可以被视为控制器(在MVC模式中)的一个专门方面,它充当转换器,将模型信息更改为视图信息并将命令从视图传递到模型中.视图模型公开公共属性,命令和抽象.Model_View_ViewModel
如果你想驱动许多类似的View-ViewModel(用例),MVVMC(MVC + MVVM)的引入是必不可少的.然后,您可以介绍控制器.Model_View_ViewModel_Controller
在最简单的情况下,让 ViewModel 实现“控制器”逻辑。对于大型应用程序,我有时会使用 MVVMC 模式,该模式使用单独的控制器类。最近博客圈上有很多人支持使用 MVVMC 而不是 MVVM。
\n\nMVVM 已死,MVVMC 万岁!
\n MVMMC \xe2\x80\x93 MVVM 增长一个 Controller