我对 mvvm 比较陌生,但是我有一个关于从视图模型绑定的问题。我有一个视图模型,我想在它的构造函数中填充一个 observablecollection。我的构造函数如下所示:
public StudySelectionViewModel() : base() {
_studyRepository = StudyRepository.Instance;
InitializeViewModelData();
}
InitializeViewModelData() 如下所示:
private void InitializeViewModelData() {
_studyRepository.RetrieveModalityTypes();
RaisePropertyChanged("ModalityTypes");
}
我的属性 ModalityTypes 如下所示:
public ObservableCollection<ModalityType> ModalityTypes {
get {
return _studyRepository.ModalityTypes;
}
}
可能不用说我的存储库调用数据库并检索数据。调试时,看起来 RaisePropertyChanged 比我的 _studyRepository.RetrieveModalityTypes 方法更早执行,因此它绑定到一个空属性。
我在这里错过了什么吗?我的设计不好吗?有任何想法吗?
提前致谢,