raisepropertychanged和PropertyChanged有什么区别?
我认为两者都是相同的,但我发现只在一个文件中使用它们,例如下面的代码。其中代码为raisepropertychanged。
public decimal Amount { get { return _amount; } set { _amount = value; RaisePropertyChanged("Amount"); } }
这里是PropertyChanged的代码:
public event PropertyChangedEventHandler PropertyChanged; private void RaisePropertyChanged(string propertyName) { // take a copy to prevent thread issues PropertyChangedEventHandler handler = PropertyChanged; if (handler != null) { handler(this, new PropertyChangedEventArgs(propertyName)); } }
plz解释它们之间的区别:
PropertyChanged
是一个事件。 RaisePropertyChanged
是用于引发事件的方法。
当然,您可以直接从属性设置器调用事件,但是如果处理程序不是null,则每次都必须检查…更好地在一个地方执行。