PropertyChanged.Fody – atrybuty

Jedną z zalet biblioteki PropertyChagned.Fody jest zestaw atrybutów, które ta biblioteka oferuje. Pozwalają one na konfigurację notyfikacji, umożliwiają ignorowanie właściwości, a także dają możliwość zdefiniowania zależności pomiędzy polami. Najważniejsze atrybuty udostępnione przez autora opisane zostały poniżej.

ImplementPropertyChanged

Podstawowym atrybutem w bibliotece PropertyChanged.Fody jest ImplementPropertyChanged. Klasa oznaczona przez niego zostaje przez Fodiego zmodyfikowana poprzez wstrzyknięcie implementacji INotifyPropertyChanged. Jako przykład niech posłuży poniższa klasa:

Po wstrzyknięciu kodu IL wygląda ona następująco:

AlsoNotifyFor

Kolejny przydatny atrybut to AlsoNotifyFor. Pozwala on na określenie zależności pomiędzy właściwościami:

Po wstrzyknięciu kodu, klasa prezentuje się następująco:

DoNotNotify

Za pomocą DoNotNotify można oznaczyć właściwości, które nie chcemy, aby informowały o zmianie. Następujący kod:

Po plecieniu wygląda tak:

DependsOn

Kolejnym atrybutem jest DependsOn. Atrybut pozwala wstrzyknąć do właściwości notyfikację o zmianie. Kod przedstawiony niżej, obrazuje wspomniane zachowanie:

Przyczyni się on do powstania kodu:

Podsumowanie

Atrybuty są niezbędnym elementem w pracy z PropertyChanged.Fody. Zapewniają większą elastyczność w generowaniu kodu i pozwalają na definiowanie zależności pomiędzy właściwościami. Zachęcam do poeksperymentowania z biblioteką.

Facebooktwitter

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *