WPF에서 INotifyPropertyChanged 귀차니즘 해결

WPF의  MVVM 구조는 멋지다. GUI 개발에서 glue code를 많이 제거해준다.

특히 Model 의 변화가 자동으로 View 에 반영되는 구조는 매우 유용하다.

다만, 모델의 프로퍼티가 변경 되면 propertyChanged를 이용해서 변경된 사실을 통보해줘야 한다.

요게 은근히 귀찮다.

public class Person : INotifyPropertyChanged
{
    string givenNames;
    public string GivenNames
    {
        get { return givenNames; }
        set
        {
            if (value != givenNames)
            {
                givenNames = value;
                OnPropertyChanged("GivenNames");
            }
        }
    }
}

위 코드처럼 프로퍼티를 일일이 만들어 줘야 하고, set 프로퍼티 안에서 일일이 OnPropertyChanged()를 호출해 줘야 한다. 하나 두개면 상관없지만 많으면 코드도 길어지고 개 귀찮..

하지만 역시 해결책은 있다!

https://github.com/Fody/PropertyChanged

이거 하나면 해결 끝~

ps. fody 라이브러리는 저거 말고도 엄청 다양한 플러그인이 있다