跨视图模型MVVM保留对象状态

时间:2015-01-29 14:51:30

标签: c# wpf class object mvvm

这听起来很基本但是,请原谅我,让我知道可能的解决方案。我在我的应用程序中使用MVVM模式,我对它很新手。

我有一个父视图(比如'StudentView')及其viewmodel(StudentViewmodel)

StudentView拥有两个控件 - Tablinks和一个“保存按钮”

  • Tablinks将链接到每个视图(如学术,个人等)。这将像树视图一样有两个窗格。我在右窗格中加载页面,左侧窗格中的标题。每个视图都有自己的具有相应属性的Viewmodel
  • 允许用户编辑每个视图中绑定到VM属性的值。
  • 允许用户浏览每个标签并进行更改,这些更改将更新相应VM中的属性

  • 现在,当用户点击'StudentViewModel'中的Save按钮时,我需要在每个VM中调用'Save'方法(如Academic,Personal)并获取对那些持有更新属性并推送的对象的引用到我的控制器。

这里的问题非常简单。当我调用AcademicViewModel的Save方法时,它将创建一个新实例,我无法掌握通过Tablinks启动的修改对象。

除了使这些属性成为静态之外,还有其他工作吗?

提前致谢。

编辑: 因为,我需要从另一个viewmodel调用此Save方法。它不是一种静态方法。它是一个实例方法,所以,我需要一个对象来调用它。

1 个答案:

答案 0 :(得分:0)

使用DI容器解决了我的问题。