是否可以引用位于不同可移植类库中的Viewmodels以及位于不同可移植类库中的Views?请参阅位于单独的可移植类库项目中的ViewModels和Views
我的项目结构如下:
- SampleApp(便携式) - >查看 - > SecondPage.xaml
- SampleApp(Droid的)
- TestVM(类库项目) - >的ViewModels - > SecondPageViewModel
在App.cs,我注册页面如下 Container.RegisterTypeForNavigation<SecondPage, TestVM.ViewModels.SecondPageViewModel>();
它导航到第二页,但构造函数,INavigationAware接口方法没有被调用,mvvm绑定没有工作。
于是我想尝试的解决方案如下Getting Started with Prism’s new ViewModelLocator
解释我已重写ConfigureViewModelLocator
protected override void ConfigureViewModelLocator()
{
base.ConfigureViewModelLocator();
ViewModelLocationProvider.SetDefaultViewTypeToViewModelTypeResolver((viewType) =>
{
var viewName = viewType.FullName;
var viewAssemblyName = viewType.GetTypeInfo().Assembly.FullName;
var viewModelName = String.Format(CultureInfo.InvariantCulture, "{0}ViewModel, {1}", viewName, viewAssemblyName);
return Type.GetType(viewModelName);
});
}
但是我怎么是指哪里我的ViewModels位于组装?
当试图获取视图模型类型时,什么是'viewName','viewAssemblyName'和'viewModelName'?视图模型组件的全称是什么? – Haukinger
@Haukinger ** viewName **:SampleApp.Views.SecondPage, ** viewAssemblyName **:SampleApp,Version = 1.0.0。0,Culture = neutral,PublicKeyToken = null, ** viewModelName **:SampleApp.Views.SecondPageViewModel,SampleApp,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null –
@Haukinger我的视图模型位于TestVM类库项目,程序集名称“TestVM” –