C#/ WPF:PropertyChanged在ViewModel中的所有属性?

我有一个这样的课:

public class PersonViewModel : ViewModelBase //Here is the INotifyPropertyChanged Stuff { public PersonViewModel(Person person) { PersonEntity = person; } public Person PersonEntity { get { return PersonEntity.Name; } private set { PersonEntity.Name = value; RaisePropertyChanged("PersonEntity"); } public string Name { get { return PersonEntity.Name; } set { PersonEntity.Name = value; RaisePropertyChanged("Name"); } public int Age{ get { return PersonEntity.Age; } set { PersonEntity.Age= value; RaisePropertyChanged("Age"); } public void ChangePerson(Person newPerson) { //Some Validation.. PersonEntity = newPerson; } 

我的文本框绑定到ViewModel的名称和年龄。 如果我更改ViewModel中的_person对象,是否必须再次为每个Property调用RaisePropertyChanged,或者是否有办法自动执行此操作(在我的混凝土示例中,我有大约15个Properties ..)?

谢谢你的帮助。

干杯约瑟夫

您可以通过在PropertyChangedEventArgs使用nullstring.Empty指定所有属性已更改的属性名称。 这在PropertyChanged的文档中提到。