niedziela, 10 kwietnia 2016

MVVM INotifyPropertyChanged

W tym poście chciałbym tylko pokazać jak wygląda najprostsza implementacja interfejsu INotifyPropertyChanged.
Poniżej jest kawałek mojego kodu który zawiera minimum tego co wystarczy żeby View był powiadamiany o zmianach danych które wystąpiły w Model albo ViewModel.
Interfejs INotifyPropertyChanged należy zaimplementować w klasie Model i ViewModel. Jak już pisałem we wcześniejszych postach zostaje wykorzystywany do informowania View o zmianie wartości naszych danych
public class Notify : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged; protected void OnPropertyChanged([CallerMemberName] string propertyName = "")
{
if(PropertyChanged != null) {
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}
A tutaj wystarczy do Zmiennej dopisac jedna linijke kodu OnPropertyChanged("Nazwa Zmiennej").
Teraz gdy zmieni się wartość zmiennej View zostaje powiadomione o zmianie.
public class WarsztatViewModel : Notify
{
private int warsztatId;
public int WarsztatId
{
get{return warsztatId};
set
{
if(value! = warsztatId)
{
warsztatId = value;
OnPropertyChanged("WarsztatId");
}
}

Brak komentarzy:

Prześlij komentarz