Prism可以与MVVM Light一起使用吗?

时间:2011-09-10 20:02:41

标签: wpf mvvm prism mvvm-light

我需要使用棱镜。 (我需要复合UI)。但是从MVVM Light的演示看起来很酷。

两者可以一起工作吗?或者这是个坏主意?

有人能告诉我一个如何让它们一起工作的例子吗?

对于MVVM方面,我想要复合UI和MVVM Light的棱镜。

3 个答案:

答案 0 :(得分:11)

是的,他们合作得很好

它们都是框架库,因此您可以从中选择您想要的部分。例如,我喜欢使用Prism的NotificationObject(ViewModelBase),而是MVVM Light的Messenger(用于视图模型之间通信的事件系统)。

有时我甚至会在项目中同时使用Prism的DelegateCommand和MVVM Light RelayCommand,即使它们都是同一个东西(两者之间的主要区别是你必须手动提升CanExecuteChanged() DelegateCommand RelayCommand,{{1}}自动执行此操作,有时需要更频繁地执行此操作)

答案 1 :(得分:4)

我们在项目中使用PRISM。虽然PRISM可以使用像MVVM light这样的免费框架,但其中一些框架可以说是“更好”的PRISM组件,整体解决方案PRISM的工作原理非常好。此外,我认为如果没有令人信服的理由,在项目中使用一种技术会更简单。

使用PRISM的一个优点是教程和帮助学习该技术是非常好的。团队的任何新成员都应该发现掌握这些概念相对容易。

查看类似问题MVVM Light + Unity or Prism?

答案 2 :(得分:3)

Prism和MVVM light都是MVVM框架,因此使用其中一个是有意义的。