我对WPF比较陌生,所以我的问题可能会令人困惑... 我试图使用Jabber.NET实现一个聊天应用程序,我想遵循正确的MVVM架构。 其实我有以下型号: BuddyListModel这是一种在WPF中实现MVVM应用程序的好方法吗?
ChatSessionModel
ChatMessageModel
以下的ViewModels:
BuddyListViewModel
ChatSessionsViewModel
ChatMessagesViewModel
每个VM都包含相应模型的ObservableCollection> <>。
我在BuddyListViewModel(我已经把登录处理)和所有的事件处理程序(状态,新消息)instanciate Jabber在该虚拟机;问题在于,通过这种方式,我必须从BuddyListViewModel调用其他VM方法(AddNewChatSession,当新消息到达时,....),我不知道这是否是MVVM的正确方法。
另一个问题是,我在单个ViewModel中处理所有消息,并认为使用过滤器(例如在linq中)在相应的ChatSession中显示消息。这是一件好事吗?
在此先感谢您的建议!
非常感谢您的有用建议! – Cris