我正在尝试将我的 WP8 项目从自制的 MVVM 实现调整为 MVVM Light。
应用程序编译时没有错误,但是当我在 Expression Blend 中打开 MainPage.xaml 时,我会收到以下错误:
类 project.Services.INavigationService 已注册。应用程序.xaml
我的 ViewModelLocator.cs:
/// <summary>
/// Initializes a new instance of the ViewModelLocator class.
/// </summary>
public ViewModelLocator()
{
ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);
if (ViewModelBase.IsInDesignModeStatic)
{
}
else
{
if (!SimpleIoc.Default.IsRegistered<INavigationService>())
{
SimpleIoc.Default.Register<INavigationService>(() => new NavigationService());
}
}
SimpleIoc.Default.Register<MainPage>();
SimpleIoc.Default.Register<SettingsEditViewModel>();
}
正如您从我的代码注释中看到的那样,我已经尝试了此处假设的修复,但我仍然在 Blend 中遇到此错误。没有其他地方可以注册 INavigationService,那么可能是什么问题?
有任何想法吗?:)