跨类共享字符串

时间:2013-12-07 03:09:46

标签: c# wpf class mvvm enumeration

我有一个列出硬盘的组合框,绑定到选定值的是一个名为currentdrive的字符串,当盒子上的选定值更改时,枚举选定的硬盘,用图像文件填充列表框,但我有第二个列表框还需要知道当前的硬盘,这个列表框不会显示图像,我打算显示有关图像的元数据,但是我需要这个框才能知道所选硬盘在显示元数据之前是什么。因为元数据等将在它自己的类中,如何在不重复currentdrive字符串的情况下访问currentdrive字符串,我希望元数据类能够共享该功能。

1 个答案:

答案 0 :(得分:2)

根据我的理解,你拥有本质上是第二个ViewModel,并且你想要从原始ViewModel访问数据,这就是所谓的Singleton模式的解决方案,并以这种方式使用:

public class ViewModel()
{
    public static ViewModel Instance;

    public ViewModel()
    {
        Instance = this;
    }

    public string foo = "bar";
}

在你的第二堂课:

public class DifferentViewModel()
{
    public DifferentViewModel()
    {
        this.bar = ViewModel.Instance.foo;
    }

    public string bar;
}