命令和事件
我们知道MVVM指的就是Model ViewModel 与 View,之前为了做到业务逻辑和前台彻底分离,我们使用了Command命令,将界面的的输入或者是某些控件的事件,转化为命令。这样业务逻辑就从View搬到了ViewModel。很明显这个传递方向是View -》ViewModel。
但是现在有个一个需求是需要ViewModel通知View某个事情,比如ViewModel告诉View你需要弹出一个窗口!那这个时候,我们通常在View中订阅一个事件,需要通知时在在ViewModel中发布一个事件,这样View就能收到ViewModel的消息了。此时我们的事件聚合器就登场了。
获取事件聚合器对象
我们先看一张图:
这些是Prism框架帮我们预先在容器里注册的内容,其中第11个就是我们今天的主角儿,事件聚合器,既然是注册好了,我们就可以通过构造函数注入,拿到这个对象。文章来源:https://www.toymoban.com/news/detail-456179.html
//[Unity.Dependency]
IEventAggregator eventAggregator;
public PrismEventPageViewModel(IEventAggregator eventAggregator)
{
this.eventAggregator = eventAggregator;
}
这里我试了一下,只能通过构造函数去拿这个对象,无法通过自动注入属性获取。文章来源地址https://www.toymoban.com/news/detail-456179.html
到了这里,关于【Prism系列】Prism事件聚合器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!