Junior — Middle
Կարող եք բացատրել, թե ինչ է INotifyPropertyChanged ինտերֆեյսը և ինչ իրավիճակներում է այն օգտագործվում:
sobes.tech AI
Պատասխան AI-ից
C# լեզվում INotifyPropertyChanged ինտերֆեյսը օգտագործվում է՝ տեղեկացնելու բաժանորդներին օբյեկտի հատկության արժեքի փոփոխության մասին: Սա հատկապես օգտակար է MVVM մոդելում՝ UI-ի զարգացման ժամանակ, որպեսզի տվյալների փոփոխության դեպքում ավտոմատ կերպով թարմացվի ինտերֆեյսը:
Երբ օբյեկտի հատկությունը փոխվում է, գործարկվում է PropertyChanged իրադարձությունը, և այդ իրադարձությանը գրանցված UI կամ այլ կոմպոնենտներ ստանում են ծանուցում և կարող են թարմացնել ցուցադրությունը:
Օգտագործման օրինակ՝
public class Person : INotifyPropertyChanged
{
private string name;
public string Name
{
get => name;
set
{
if (name != value)
{
name = value;
OnPropertyChanged(nameof(Name));
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged(string propertyName)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
Այսպիսով, երբ Name հատկությունը փոխվում է, բոլոր բաժանորդները ստանում են ծանուցում և կարող են թարմացնել UI-ն։