WPF MVVM模式 - 视图模型类之间的通信

时间:2016-08-18 06:53:34

标签: c# wpf mvvm

我正在使用Windows Presentation Foundation技术和MVVM模式创建应用程序。我在视图模型类之间进行通信时遇到问题。换句话说,我需要将一些属性从一个视图模型类更新到另一个。实际上,我使用包含类的一些视图模型对象的Singleton模式作为属性。显然,这不是一个优雅的解决方案,我不满意。我听说过一些解决这个问题的模式,但我想找到解决问题的最佳方案。

Singleton模式的代码是这样的:

public class Singleton
{
   private static Singleton _instance;
   public static Singleton GetInstance
   {
       if (_instance == null)
          _instance = new Singleton();
       return _instance;
   }

   public MainViewModel viewModel {get;private set;}

   protected Singleton {}

   public void SetViewModel(MainViewModel viewModel)
   {
      this.viewModel = viewModel;
   }

   public void RefreshPropertiesInViewModel()
   {
      viewModel.RefreshMethod(); // an example method which refreshing properties
   }
}

0 个答案:

没有答案