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