我已經實現了INotifyPropertyChanged接口一個簡單的WPF視圖查看模型,當我打電話給我的的PropertyChanged方法分配
protected void RaisePropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
上GoodText的一套像
this.RaisePropertyChanged("GoodText");
PropertyChanged事件有一個方法是我從來沒有分配過它。
它什麼時候被分配?誰幹的?
編輯:
謝謝您,偉大的建議,但我認爲威廉的回答是什麼,我正在尋找,我的意思是:當我說
<Button Content="Button" Command="{Binding CheckButtonCommand}" />
這有點像(醜陋的僞代碼)
PropertyChanged += Button.GiveMeThePropertyValue;
? 所以綁定添加了處理程序到PropertyChanged事件?
正確。該綁定添加了處理程序,因此可以通知更新,並據此採取行動。這是MVVM綁定的工作方式。被綁定的對象只需要知道INotifyPropertyChanged以獲取更新通知(和/或針對集合更新的INotifyCollectionChanged)。 –