针对这个问题的答案已经进行了编辑,新版中指出在C# 6.0中,可以通过以下的OnPropertyChanged过程来实现INotifyPropertyChanged接口:
protected void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
然而,从那个答案中并不清楚相应的属性定义应该是什么样子。当使用这种方式时,在C# 6.0中,实现完整的INotifyPropertyChanged的样子是什么?
set { SetField(ref name, value); }
。SetField
方法已经完整地显示出来了。 - Marc Gravell