0

PersonList如果 中的项目已更改,我如何触发ObservesProperty

public ICommand Save
{
    get
    {
        return _save ?? (_save = 
            new DelegateCommand(saveData,calculate).ObservesProperty(()=> PersonList));
    }
}

public  ObservableCollection<Person> PersonList
{
    get
    {
        return _personList ?? (_personList = new  ObservableCollection<Person>());
    }
    set
    {
        SetProperty(ref _personList , value);
    }
}
4

1 回答 1

0

你不能。DelegateCommand.ObservesProperty 方法仅观察 ViewModel 级别的属性以获取更改通知。如果您想响应列表中的每个单独项目,您需要连接到这些子项目的 INPC。有关一些方法,请参阅此 SO question

ObservableCollection 没有注意到其中的项目何时更改(即使使用 INotifyPropertyChanged)

于 2016-09-30T14:44:17.167 回答