这个问题涉及到: 开始WPF / MVVM应用程序:在视图之间导航 http://www.codeproject.com/Articles/72724/Beginning-a-WPF-MVVM-application-Navigating-betwee.aspx
我已经在他的博客上询问了这篇文章的作者如何处理这个问题,但我仍然感到难过。
这是我的App.xaml.cs
namespace PlatformXpress
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : Application
{
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
var container = new MicrokernelContainer();
container.RegisterA<IMainViewModel>(typeof(MainViewModel));
container.RegisterA<IHomeViewModel>(typeof(HomeViewModel));
container.RegisterA<ICompanyOverviewViewModel>
(typeof(CompanyOverviewViewModel));
container.GetA<IMainViewModel>().NavigateToView(HomeView);
Container.InitializeContainerWith(container);
}
}
}
现在一切正常,因为它应该提供的示例(我已经改变了以适应我的用法),并且我的查询建议是添加container.GetA行。在VS 2010中唯一的问题是在所述行@(HomeView)的末尾,这就是我需要在启动时启动的视图,而我似乎无法让它工作。错误是没有适用的可变量。
我搜索了谷歌的容器用途.GetA和返回结果没用。
这里的某个人可能只需要一眼就能轻松解决这个问题!
干杯 罗汉
答案 0 :(得分:1)
您需要HomeView
的实例:
container.GetA<IMainViewModel>().NavigateToView(new HomeView());