无法使用ViewModel第一种方法导航到Prism中的视图

时间:2012-05-26 16:31:09

标签: wpf mvvm navigation prism unity-container

我在切换到视图时遇到问题。以下是使用复合命令的代码:

Shell View Model:

  private void Navigate(object navigatePath) // this method handles a composite command with a path set in XAML CommandParameter="{x:Type ViewModels:MainViewModel}"
    {
        if (navigatePath != null)
        {
           _regionManager.RequestNavigate(RegionNames.ContentRegion, navigatePath.ToString());
        }
    }

在ModuleA Initialize方法中:

 _container.RegisterType<IMainView,MainView>();
        _container.RegisterTypeForNavigation<MainViewModel>();

RegisterTypeForNavigation是一个Unity扩展集,如下所示:

   public static void RegisterTypeForNavigation<T>(this IUnityContainer container)
    {
        container.RegisterType(typeof(Object), typeof(T), typeof(T).FullName);
    }

当我点击按钮进行导航时:我只获得视图模型的全名,如:shell中的ModuleA.ViewModels.MainViewModel! 我做错了吗?

1 个答案:

答案 0 :(得分:0)

您没有导航到ViewModels。您导航到视图。