WPF Prism Request Navigate activation error

其他测试项目时没有问题,但是有些项目有时候导航一直报错误!

Referring the StockTraderRI, I created a popup region in my shell

infBehaviors:RegionPopupBehaviors.CreatePopupRegionWithName="{x:Static inf:RegionNames.SecondaryRegion}"

In the module I am trying to load the view to the popup

_regionManager.RequestNavigate(RegionNames.SecondaryRegion, new Uri("/OrderDetailsView", UriKind.Relative));

OrderDetailsView is a view within OrderDetailsModule. At this point I am getting the below error

Activation error occurred while trying to get instance of type Object, key "OrderDetailsView"

Stack trace looks like below

 at Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(Type serviceType, String key) in c:\Projects\CommonServiceLocator\main\Microsoft.Practices.ServiceLocation\ServiceLocatorImplBase.cs:line 53
   at Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance[TService](String key) in c:\Projects\CommonServiceLocator\main\Microsoft.Practices.ServiceLocation\ServiceLocatorImplBase.cs:line 103
   at Prism.Regions.RegionNavigationContentLoader.CreateNewRegionItem(String candidateTargetContract)

问题解决:

You must register your objects for navigation. If you are using Prism 6 you must use

Container.RegisterTypeForNavigation<OrderDetailsView>();

If using v5 or less you must use 

container.RegisterType(typeof(object), typeof(OrderDetailsView), "OrderDetailsView");

EDIT: If using MEF, you must provide the view name in the Export Attribute:

[Export("OrderDetailsView")]
public class OrderDetailsView : UserControl
{ ... }

问题解决!

http://stackoverflow.com/questions/33301926/wpf-prism-request-navigate-activation-error

https://github.com/PrismLibrary/Prism/blob/master/Documentation/WPF/60-Navigation.md#basic-region-navigation

时间: 2024-10-13 22:21:40

WPF Prism Request Navigate activation error的相关文章

WPF Prism框架下基于MVVM模式的命令、绑定、事件

原文:WPF Prism框架下基于MVVM模式的命令.绑定.事件 Prism框架下的自定义路由事件和命令绑定 BaseCode XAML代码: <Button x:Class="IM.UI.CommandEx.PrismCommandEx" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/wi

WPF PRISM开发入门一

这篇博客将介绍在WPF项目中引入PRISM框架进行开发的一些基础知识.目前最新的PRISM的版本是Prism 6.1.0,可以在Github上获取PRISM的源码.这个系列的博客将选择PRISM 4.1版本来讲解.可以从微软官网上下载到PRISM 4.1相关内容.将下载下来的文件解压开: 新建一个WPF解决方案如下: 解决方案中包含两个工程,GetStartedPrismWPF是一个WPF项目,GetStartedPrismWPF.MainModule是一个类库项目.这两个项目中都同时添加下面P

基于WPF&amp;Prism&amp;AvalonEdit的XAML轻量编辑器

1. 写在前面 一直从事WPF的相关开发工作,有时为了尝试或演示某些仅仅基于XAML的效果时,但又不想大动干戈打开VS去创建项目,所以一个轻便简单,集编辑与预览于一身的XAML编辑器就显得格外重要. Kaxaml,集编辑与预览,过去一直在使用,但苦于不知何原因,最近频频崩溃,虽然开源有代码可循,但也懒的下载调试: XAML Studio,只能在Win10上使用,且只适用于UWP,被迫放弃. 那么,干脆自己动手,丰衣足食!这样,XAML Viewer诞生了,而且完全开源! 2. 界面预览 非专业美

WPF prism 类、属性和方法的导入和导出

学习Prism一定要掌握依赖注入的应用,只有了解了Prism的依赖注入才能更好的使用Prism提升应用开发的架构. 首先说明Prism依赖注入有两种方式及MEF和Unity ,在Prism中是两个没有关联的dll.我倾向于使用MEF,下面学习下MEF在Silverlight中的具体实现.先看MEF实现图示 1.Catalog(目录):为了发现可用于组合容器的部件,组合容器将使用“Catalog”.目录是一个对象,通过它发现可用部件,MEF 提供了用于从提供的类型.程序集或磁盘路径创建Catalo

wpf prism IRegionManager 和IRegionViewRegistry

引入了一个新的问题,IRegionViewRegistry和IRegionManager都具有RegisterViewWithRegion方法,二者有区别么? 答案是——没有.我们已经分析过,在UnityBootstrapper的中,已经默认建立了IRegionManager和RegionManager的映射关系.所以,只要查看Prism框架中的RegionManager就可以了. 以下则是RegionManager的RegisterViewWithRegion方法,这是一个扩展方法: publ

WPF PRISM开发入门二(Unity依赖注入容器使用)

这篇博客将通过一个控制台程序简单了解下PRISM下Unity依赖注入容器的使用.我已经创建了一个例子,通过一个控制台程序进行加减乘除运算,项目当中将输入输出等都用接口封装后,结构如下: 当前代码可以点击这里下载. 运行效果如下: 下面将引入Unity类库,使用Unity来生成需要的对象实例. 先查看一下CalculateRelpLoop类, public class CalculateRelpLoop : ICalculateRelpLoop { ICalculateService _calcu

WPF Prism

简介   图解   参考 Using the Model-View-ViewModel Pattern

Activation error occured while trying to get instance of type Database key

配置默认连接 <dataConfiguration defaultDatabase="Database Connection String">  否则就必须传递参数进去  Database db = DatabaseFactory.CreateDatabase(strConString); <add name="Database Connection String" connectionString="Data Source=DEVRAC

request:fail parameter error: parameter.url should be String instead of Undefined;

项目接过来突然报这些被折磨死了:上网查各种奇怪的答案的都有还是没有解决 静下心挨个注释页面只剩导航切换了,还是报错我就纳闷了. 周末回家挨个注释, 项目重启,开发工具重启(为了去掉缓存之类的) 结果定位到每次滑倒下面一定距离,这个是猜你喜欢的那块分页的逻辑, 然后下滑请求接口注释就不报错了,后来请求接口参数,url打印发现引入url变量undefined ,找到api定义的文件发现变量请求路径被人删了,重新加上就好了.坑爹的问题: 解决问题的思路和心清气和很重要.周末在家一遍胡吃海喝,一边打游戏