MVVM从小孩到父母的消息传递
问题描述:
是否有可能从子视图模型中为一个ObservableCollection引发propertychanged? 我有一个孩子viewmodel从父ViewModel插入一个ObservableCollection中的新项目,我需要raisePropertychanged该集合刷新绑定到它的列表。 我需要的是在该列表中查看已添加的新项目。 谢谢MVVM从小孩到父母的消息传递
答
您可以使用Messneging服务向任何View/Viewmodel/Class发送和注册Value form view/ViewModel/Class。您可以像使用一样在发送和注册消息时使用令牌。
假设你要通过的消息从视图模型来ABCView那么你可以使用信使这样的..
对于防爆:
Messenger.Defalut.Send<ObservableCollection<string>>(obj,"ForAbcView");
而且在ABCView你可以这样注册:
Messenger.Default.Register<ObservableCollection<string>>(this,"ForAbcView",(b)=>{ //Some Code });
随着使用令牌的信使发件人将只会寻找具有相同令牌的注册。它只调用将具有相同的方法。
通过这种方式,您可以将集合发送到您想要的任何区域。