Wpf Prism(CAL)中的模块如何相互通信?
我有一个WPF应用程序,它始终使用MVVM模式,没有代码隐藏,ViewModels通过MainViewModel相互通信,MainViewModel被注入其中 最终,需要将此应用程序合并到使用复合应用程序库、Unity等的应用程序中。通过查看CAL的代码和文档,我可以了解如何将整个应用程序注册为CAL应用程序中的模块,但我的应用程序作为模块将如何和其他也动态加载的模块通信?例如,我期望每个模块以某种方式注入CAL应用程序,或者有某种事件控制器或信使,我可以与其他模块松散地通信,也就是说,可以发送消息并响应事件,但不必担心这些模块是否实际存在 复合应用程序模块如何相互通信?请查看Prism。如果您使用的是CAL(Prism),请查看/CompositePresentationEvent,其中它使用发布者/订阅者模式(也称为发布/订阅),以便应用程序的某些模块订阅到事件聚合器,因此,当另一个模块有更改时,它会将更改(例如:(SelectedItemChanged)发布到事件聚合器,如果其他模块对已发布的更改感兴趣,它们将在应用程序的该部分中执行操作 例如: 桌面电子邮件应用程序: 模块:Wpf Prism(CAL)中的模块如何相互通信?,wpf,mvvm,design-patterns,prism,Wpf,Mvvm,Design Patterns,Prism,我有一个WPF应用程序,它始终使用MVVM模式,没有代码隐藏,ViewModels通过MainViewModel相互通信,MainViewModel被注入其中 最终,需要将此应用程序合并到使用复合应用程序库、Unity等的应用程序中。通过查看CAL的代码和文档,我可以了解如何将整个应用程序注册为CAL应用程序中的模块,但我的应用程序作为模块将如何和其他也动态加载的模块通信?例如,我期望每个模块以某种方式注入CAL应用程序,或者有某种事件控制器或信使,我可以与其他模块松散地通信,也就是说,可以发送
- 邮件项目(MailID、主题、发件人、发送日期等)
- 详细视图(MessageBody)