【发布时间】:2016-03-19 18:19:51
【问题描述】:
您好,我在 Viewmodel 中有 3 个自定义类型的 ObservableCollections,我们将其称为 ViewmodelA,我需要将这些集合发送到 ViewmodelB。我尝试注册一个使用 MessengerInstance 返回 3 个 ObservableCollections 列表的方法,但它抱怨它期望返回类型为 void。
牢记 mvvm 模式将这些集合转移到 ViewModelB 的最佳方式是什么?
顺便说一句,我正在使用 mvvm-light
这是我返回列表的方法:
private List<ObservableCollection<Column>> RetrieveFilters(Column col)
{
List<ObservableCollection<Column>> Out = new List<ObservableCollection<Column>>
{
_manuColumns,
_pnColumns,
_nounModColumns
};
return Out;
}
然后我尝试用
注册该方法 MessengerInstance.Register<Column>(this, RetrieveFilters);
我得到的错误是
List<ObservableCollection<Column>> PropertyViewModel.RetrieveFilters(Column)返回类型错误
【问题讨论】:
-
很明显的方法是在创建它们时将这些可观察对象注入到视图模型中
标签: c# wpf mvvm mvvm-light