Sobes.tech
Junior — Middle

Hoe implementeer je een mechanisme voor het melden van eigenschapswijzigingen in datamodellen in .NET?

sobes.tech AI

Antwoord van AI

In .NET wordt voor het implementeren van notificaties over wijzigingen in eigenschappen in datamodellen meestal de interface INotifyPropertyChanged gebruikt. Deze definieert het evenement PropertyChanged, dat wordt aangeroepen wanneer de waarde van een eigenschap verandert.

Voorbeeld van implementatie:

using System.ComponentModel;

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));
    }
}

Wanneer de eigenschap Name wordt gewijzigd, wordt de methode OnPropertyChanged aangeroepen, die de abonnees op de hoogte stelt dat de eigenschap is gewijzigd. Dit wordt vaak gebruikt in het MVVM-patroon om de UI bij te werken wanneer gegevens veranderen.