不同视图模型之间的绑定属性

凯夫孔

有没有办法使用kendo mvvm将不同视图模型的两个属性相互绑定,还是我必须自己编写change事件的代码?

UserViewModel = {
    init: function(e) {
    },
    show: function(e) {
    },
    model: {
       isLoggedIn: kendo.observable(false)
    }
}

OtherContextViewModel = {
    init: function(e) {
    },
    show: function(e) {
    },
    model: {
       UserIsLoggedIn: //bind to isLoggedIn of the UserViewModel
    }
}

我尝试这样做的原因:我想OtherContext根据用户是否登录来隐藏和显示几件事在讨论用户组和特权时,可以采取进一步的措施。如果这不是正确的方法和/或不好的做法,谁能给我一个例子或其他方法?

机械

嗨,我认为调解器模式可能就是您要寻找的,它是在视图模型之间发送消息而无需直接引用它们的理想选择。CodeProject的教程显示了如何实现调解器模式。

http://www.codeproject.com/Articles/35277/MVVM-Mediator-Pattern

假设我们有2个ViewModel:1. LoginViewModel 2. MainViewModel

我们将MainViewModel注册到调解器消息UserLoggedIn

Mediator.Instance.Register(
   (Object o) =>
   {
     UpdateView(o as loggedInBoolean);
   }, Mediator.ViewModelMessages.UserLoggedIn);

当用户通过LoginViewModel登录时,我们会向中介者消息UserLoggedIn发送一条消息。

public void LoggingIn()
{     
Mediator.Instance.Notify(Mediator.ViewModelMessages.UserLoggedIn, null);
}

发送此消息将触发UpdateView(loggedInBoolean)方法,您可以使用该方法更改MainViewModel中的任何属性等。

摘要:介体在viewModel之间传递消息。您想要更改属性,启动函数等的viewModel注册到消息中。然后,另一个viewModel可以将消息发送到已注册到该特定消息的所有类。

希望能有所帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

UWP:绑定到视图模型属性

来自分类Dev

在不同的视图模型之间共享PropertyChanged数据

来自分类Dev

Xamarin表单中的视图到不同视图模型的绑定

来自分类Dev

如何获得此视图模型属性的自动模型绑定?

来自分类Dev

如何从视图模型访问不可绑定的视图属性?

来自分类Dev

在jQueryMobile动态加载的不同页面上绑定Knockoutjs视图模型

来自分类Dev

将视图模型绑定到敲除中属性的存在

来自分类Dev

依赖属性将用户控件与视图模型绑定

来自分类Dev

从视图模型绑定到ListView项目的点击属性

来自分类Dev

如何将DateTime属性绑定到我的视图模型?

来自分类Dev

如何将DateTime属性绑定到我的视图模型?

来自分类Dev

在不同模型的对象之间复制属性,但属性名称相同

来自分类Dev

WPF 绑定视图模型

来自分类Dev

使用不同的属性名称绑定到 POCO 模型

来自分类Dev

如何消除不同视图模型模块之间的代码重复?

来自分类Dev

通过notifychanged或command属性在父视图模型和子视图模型之间进行通信?

来自分类Dev

通过notifychanged或command属性在父视图模型和子视图模型之间进行通信?

来自分类Dev

在MVVM模式中在模型和视图模型之间进行绑定的正确方法是什么?

来自分类Dev

将多个Caliburn.Micro视图模型绑定到同一视图的不同实例

来自分类Dev

一个视图在不同时间绑定到不同的数据模型(AngularJS)

来自分类Dev

将子视图中的元素绑定到父视图模型的属性

来自分类Dev

如何将视图的BackgroundColor属性绑定到Xamarin Forms中的视图模型?

来自分类Dev

如何更新Canvas附加属性还可以更新绑定视图模型属性?

来自分类Dev

从视图设置模型属性

来自分类Dev

无法正确绑定视图模型

来自分类Dev

使用带有Ninject和WPF的Caliburn.Micro在视图模型之间绑定/传递数据

来自分类Dev

无法模型绑定视图模型中的集合

来自分类Dev

重用HTML但绑定不同的模型

来自分类Dev

当从视图模型公开ObservableCollection时,如何对从ObservableCollection公开的属性进行数据绑定?

Related 相关文章

  1. 1

    UWP:绑定到视图模型属性

  2. 2

    在不同的视图模型之间共享PropertyChanged数据

  3. 3

    Xamarin表单中的视图到不同视图模型的绑定

  4. 4

    如何获得此视图模型属性的自动模型绑定?

  5. 5

    如何从视图模型访问不可绑定的视图属性?

  6. 6

    在jQueryMobile动态加载的不同页面上绑定Knockoutjs视图模型

  7. 7

    将视图模型绑定到敲除中属性的存在

  8. 8

    依赖属性将用户控件与视图模型绑定

  9. 9

    从视图模型绑定到ListView项目的点击属性

  10. 10

    如何将DateTime属性绑定到我的视图模型?

  11. 11

    如何将DateTime属性绑定到我的视图模型?

  12. 12

    在不同模型的对象之间复制属性,但属性名称相同

  13. 13

    WPF 绑定视图模型

  14. 14

    使用不同的属性名称绑定到 POCO 模型

  15. 15

    如何消除不同视图模型模块之间的代码重复?

  16. 16

    通过notifychanged或command属性在父视图模型和子视图模型之间进行通信?

  17. 17

    通过notifychanged或command属性在父视图模型和子视图模型之间进行通信?

  18. 18

    在MVVM模式中在模型和视图模型之间进行绑定的正确方法是什么?

  19. 19

    将多个Caliburn.Micro视图模型绑定到同一视图的不同实例

  20. 20

    一个视图在不同时间绑定到不同的数据模型(AngularJS)

  21. 21

    将子视图中的元素绑定到父视图模型的属性

  22. 22

    如何将视图的BackgroundColor属性绑定到Xamarin Forms中的视图模型?

  23. 23

    如何更新Canvas附加属性还可以更新绑定视图模型属性?

  24. 24

    从视图设置模型属性

  25. 25

    无法正确绑定视图模型

  26. 26

    使用带有Ninject和WPF的Caliburn.Micro在视图模型之间绑定/传递数据

  27. 27

    无法模型绑定视图模型中的集合

  28. 28

    重用HTML但绑定不同的模型

  29. 29

    当从视图模型公开ObservableCollection时,如何对从ObservableCollection公开的属性进行数据绑定?

热门标签

归档