我的 View 模型中有以下属性,并且 View 绑定(bind)到该属性。
除 ActiveCategory
(在 _catManager
内)可以从其他事件(在该 View 外)更改的特殊情况外,一切正常。
我不想在 View 模型中公开整个 Category Manager
,所以我只公开我需要的属性。执行此操作的最佳方法是什么,以便通知 View 所有更改,即使是那些未在此 View 模型中触发的更改?
public ICategory SelectedCategory
{
get
{
return _catManager.ActiveCategory;
}
set
{
_catManager.ActiveCategory = value;
OnPropertyChanged("SelectedCategory");
}
}
让您的 View 模型挂接到 _catManager 的 INotifyPropertyChanged 事件,并让它通过 View 模型中继属性更改事件。当您看到“ActiveCategory”出现时,这意味着您需要为“SelectedCategory”提出一个 INPC。
我是一名优秀的程序员,十分优秀!