加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – MVVM:在ViewModels之间共享数据

发布时间:2020-12-15 17:40:52 所属栏目:百科 来源:网络整理
导读:如何在多个ViewModels之间共享数据? 例如,在应用程序中有一个名为Project的类. public class Project : ModelBase{ private string _projectName; public string ProjectName { get { return _projectName; } set { _projectName = value; RaisePropertyCha
如何在多个ViewModels之间共享数据?

例如,在应用程序中有一个名为Project的类.

public class Project : ModelBase
{
    private string _projectName;

    public string ProjectName
    {
        get { return _projectName; }
        set
        {
            _projectName = value;
            RaisePropertyChanged(() => ProjectName);
        }
    }
}

在多个ViewModels应用程序中应该访问ActiveProject.
在ViewModels之间共享项目的最佳方法是什么?

中介模式(消息)
>静态对象
> Singleton模式(如果是的话)?

我以前使用过Messaging,但需要很多的代码.对于所有ViewModels,我必须创建ActiveProject属性,并且还必须注册一个信使来更新.

我使用MVVM Light框架.

任何代码示例将不胜感激.

解决方法

我将创建一个ViewModel,作为所有Project ViewModel的父项. (让我们称之为解决方案)

解决方案ViewModel将具有ActiveProject属性和可观察的项目集合.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读