raisepropertychanged 和 PropertyChanged 有什么区别
本文关键字:什么 区别 PropertyChanged raisepropertychanged | 更新日期: 2023-09-27 18:34:38
我认为两者都是一样的,但我发现它们只在一个文件中使用,例如下面的代码。
public decimal Amount
{
get
{
return _amount;
}
set
{
_amount = value;
RaisePropertyChanged("Amount");
}
}
此处代码为属性已更改:
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));
}
}
请解释它们之间的区别:
PropertyChanged
是一个事件。 RaisePropertyChanged
是用于引发事件的方法。
当然,您可以直接从属性 setter 调用该事件,但是您必须每次检查处理程序是否不为 null...最好在一个地方做。