有沒有可能通過簡單綁定使用多個ViewModels? 這個想法是每個活動都有一個ViewModel。如何使用多個ViewModels與簡單綁定
問候
尼爾斯
我嘗試了基於https://github.com/slodge/MvvmCross/tree/master/Sample%20-%20SimpleDialogBinding/SimpleBinding/SimpleDroid兩個不同的ViewModels測試,但它似乎有一些問題。
我的結構是這樣的:
Activity1 Activity2
| |
| |
| |
ViewModel1 ViewModel2
兩個Activites從MvxSimpleBindingActivity繼承。
當我運行程序時,從MvxBaseSetup拋出System.ArgumentException。 這是關鍵部分:
protected IDictionary<Type, Type> GetViewModelViewLookup(Assembly assembly, Type expectedInterfaceType)
{
var views = from type in assembly.GetTypes()
where !type.IsAbstract
&& expectedInterfaceType.IsAssignableFrom(type)
&& !type.Name.StartsWith("Base")
let viewModelPropertyInfo = type.GetProperty("ViewModel")
where viewModelPropertyInfo != null
let viewModelType = viewModelPropertyInfo.PropertyType
select new { type, viewModelType };
return views.ToDictionary(x => x.viewModelType, x => x.type);
}
我真的不明白,爲什麼沒有與這兩個不同的ViewModels問題。