【发布时间】:2010-08-25 11:51:54
【问题描述】:
我正在尝试在我的 WPF 应用程序中使用 MVVM,该应用程序显示来自业务逻辑层中名为“Employee”的类中的数据,其属性为“Salary”。我有一个简单的 XAML 窗口,其中包含一个绑定到 ViewModel 类“EmployeeViewModel”中的 Salary 属性的文本框。 ViewModel 实现了 INotifyPropertyChanged,因此当 EmployeeViewModel 的 Salary 属性发生变化时,XAML 文本框中的值也会发生变化。一切正常。
现在,EmployeeViewModel 的 Salary 属性从 Employee 类的 Salary 属性中获取其值。但是,如果 Employee 类的 Salary 值被业务逻辑层中正在进行的某些其他过程更改,它不会在 EmployeeViewModel 中自动更新。让它做到这一点的最佳方法是什么?我在想 Employee 类中的某种 INotifyPropertyChanged 实现,它会让 EmployeeViewModel 知道自己更新。或者我应该使用依赖属性?或者,一旦业务逻辑层中的所有更改都已完成,我是否应该有“刷新” ViewModel 的程序。任何帮助表示赞赏!
【问题讨论】: