Kodkitabi

INotifyPropertyChanged ile Senkronizasyon

Veri değiştiğinde UI'ın otomatik güncellenmesini sağlamak.

MVVM modelinde ViewModel'deki bir değer değiştiğinde UI'ın bundan haberdar olması gerekir. Bunu INotifyPropertyChanged arayüzü ile sağlarız. Değer değiştiği anda OnPropertyChanged tetiklenir ve Binding sistemi devreye girer.

ViewModel'de PropertyChange
public class MainViewModel : INotifyPropertyChanged {
    private string _status;
    public string Status {
        get => _status;
        set {
            _status = value;
            OnPropertyChanged(nameof(Status)); // UI'a "güncellendim" der
        }
    }
    public event PropertyChangedEventHandler PropertyChanged;
    protected void OnPropertyChanged(string name) => 
        PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
}