2011-05-17 88 views
3

我正在使用WPF中的Simple MVVM Toolkit创建应用程序,应用程序使用中央选项卡控件,并为每个选项卡项使用View(UserControl)。这些视图也可能包含包含更多“子视图”的选项卡控件本身。MVVM中央应用程序逻辑

我们的困难是寻找一种方法来分享它使用几个这些观点应用逻辑,而不必一个全球巨大的凌乱类..

回答

2

我不会与拥有一切一个巨大的类去。但是我会有一个控制整体状态的中央ViewModel。像ShellViewModel一样。我会让视图模型通过Messenger(MVVM工具包灯)或EventAggregator(Prism)进行通信和交换信息。 他们提供了发布/订阅者模式来交换信息的方式。而且你可以通过实现自己的消息类来处理它们,并将它传递给它。

所以,你可以对保存所有和每一个(子)视图模型一个全球性的消息可以注册并运行有自己的保存方法收到消息后...

棱镜 http://msdn.microsoft.com/en-us/library/ff921122(v=pandp.20).aspx

MVVM灯 http://blog.galasoft.ch/archive/2009/09/27/mvvm-light-toolkit-messenger-v2-beta.aspx

让我知道这是否有帮助...