我目前正在学习MVVM,但我不了解RaisePropertyChanged
有多么重要
例如这个功能:
public City SelectedCity
{
get
{
return selectedcity;
}
set
{
RaisePropertyChanging(SelectedCityLocationPropertyName);
selectedtrend = value;
RaisePropertyChanged(SelectedCityLocationPropertyName);
MessageBox.Show(City.Name);
}
}
还有这个 :public City SelectedCity
{
get
{
return selectedcity;
}
set
{
// RaisePropertyChanging(SelectedCityLocationPropertyName);
selectedtrend = value;
// RaisePropertyChanged(SelectedCityLocationPropertyName);
MessageBox.Show(City.Name);
}
}
给我完全一样的结果。能否请您告诉我RaisePropertyChanged
为什么如此重要,并举个例子,说明它会带来重大变化? 最佳答案
读这个:
http://msdn.microsoft.com/en-us/library/system.componentmodel.inotifypropertychanged.aspxRaisePropertyChanging
事件用于通知UI或绑定(bind)的元素数据已更改。例如,当基础数据更改时,TextBox
需要接收通知,以便它可以更新您在UI中看到的文本。如果没有NotifyPropertyChanged
事件,则TextBox
将不知道数据已更改。
这在MVVM中非常重要。