在C#中,INotifyPropertyChanged是一个接口,用于通知绑定源对象的属性已更改
在C#中,INotifyPropertyChanged是一个接口,用于通知绑定源对象的属性已更改。通常情况下,您需要实现该接口并在属性更改时触发PropertyChanged事件。以下是一个简单的示例:
usingSystem;
usingSystem.ComponentModel;
classPerson:INotifyPropertyChanged
{
privatestringname;
publicstringName
{
get{returnname;}
set
{
if(name!=value)
{
name=value;
OnPropertyChanged("Name");
}
}
}
publiceventPropertyChangedEventHandlerPropertyChanged;
protectedvirtualvoidOnPropertyChanged(stringpropertyName)
{
PropertyChanged?.Invoke(this,newPropertyChangedEventArgs(propertyName));
}
}
classProgram
{
staticvoidMain()
{
Personperson=newPerson();
person.PropertyChanged+=(sender,e)=>
{
Console.WriteLine($"{e.PropertyName}haschanged");
};
person.Name="Alice";
}
}
在上面的示例中,Person类实现了INotifyPropertyChanged接口,并在Name属性的setter中调用了OnPropertyChanged方法来触发PropertyChanged事件。在Main方法中,我们订阅了PropertyChanged事件,并在属性更改时输出相应的信息。
希望这可以帮助您开始使用INotifyPropertyChanged接口在C#中实现属性更改通知。
版权声明
本文仅代表作者观点,不代表博信信息网立场。