我有一个最好的练习问题,即如何在对象之间交换消息?我找到了两种方法:
- 使用简单的动作和功能委托。
- 使用MVVM Light Toolkit Messenger。在一个情况下,这与任何工具包无关,而且很容易使用,但是我想知道案件2是否有任何好处,或者是否有任何案例1违反的原则。
欢迎任何想法。
如果要使用Action and Func delegates
,则ViewModels应该相互意识。但是MVVM中的ViewModels
就像MVC中的Controllers
一样,它们不应该彼此直接引用。这就是为什么使用MVVM Light Toolkit's Messenger
是这里的首选方法。在这种情况下,您将拥有一个松散的耦合消息系统,而无需任何对应用程序的任何部分的引用。