Как запустить обработчик события PropertyChanged только один раз в Silverlight? - PullRequest
0 голосов
/ 24 октября 2011

Я хочу, чтобы зарегистрированный обработчик события для PropertyChange срабатывал только один раз, даже если свойство снова изменяется в самом EventHandler или даже если несколько свойств изменяются для этого объекта.

Как я могу это сделать?

1 Ответ

1 голос
/ 24 октября 2011
        private string _oneTimeFiredPropertyChanged;
        private bool _oneTimeFired = false;
        public string OneTimeFiredPropertyChanged
        {
            get
            {
                return _oneTimeFiredPropertyChanged;
            }
            set
            {
                if (!oneTimeFired)
                {
                    RaisePropertyChanged("OneTimeFiredPropertyChanged");
                    oneTimeFired = true;
                }
                _oneTimeFiredPropertyChanged = value;
            }
        }
...