我上了这样的课:

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;
    }

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

谢谢你的帮助。

干杯
约瑟夫

最佳答案

您可以使用null中的属性名称string.EmptyPropertyChangedEventArgs来指示所有属性已更改。在PropertyChanged的文档中提到了这一点。

10-06 01:09