[转]基于MefBootstrapper的Bootstrapper
public class Bootstrapper : MefBootstrapper
{
ModuleCatalog moduleCatalog;
protected override void InitializeShell()
{
base.InitializeShell();
Application.Current.RootVisual = (UIElement)Shell;
}
protected override DependencyObject CreateShell()
{
return Container.GetExportedValue<Shell>();
}
protected override void ConfigureAggregateCatalog()
{
base.ConfigureAggregateCatalog();
AggregateCatalog.Catalogs.Add(new AssemblyCatalog(this.GetType().Assembly));
}
protected override void ConfigureContainer()
{
base.ConfigureContainer();
this.Container.ComposeExportedValue<ModuleCatalog>(this.moduleCatalog);
}
/// <summary>
/// 以文件配置加载模块信息
/// </summary>
/// <returns></returns>
protected override IModuleCatalog CreateModuleCatalog()
{
//
moduleCatalog = Microsoft.Practices.Prism.Modularity.ModuleCatalog.CreateFromXaml(new Uri("/KJ;component/ModulesCatalog.xaml", UriKind.Relative));
return moduleCatalog;
}
/// <summary>
/// 以代码来加载模块信息
/// </summary>
/// <returns></returns>
//protected override IModuleCatalog CreateModuleCatalog()
//{
// ModuleCatalog moduleCatalog = new ModuleCatalog();
// //moduleCatalog.AddModule
// //(
// // new ModuleInfo
// // {
// // InitializationMode = InitializationMode.OnDemand,
// // Ref = "ModuleA.xap",
// // ModuleName = "ModuleARegion",
// // ModuleType = "ModuleA.ModuleARegion, ModuleA"
// // }
// //);
// //moduleCatalog.AddModule
// //(
// // new ModuleInfo
// // {
// // Ref = "ModuleLogin.xap",
// // ModuleName = "ModuleLogin",
// // ModuleType = "ModuleLogin.ModuleLogin, ModuleLogin"
// // }
// //);
// moduleCatalog.AddModule
// (
// new ModuleInfo
// {
// // InitializationMode = InitializationMode.OnDemand,
// Ref = "ModuleMain.xap",
// ModuleName = "ModuleMain",
// ModuleType = "ModuleMain.ModuleMain, ModuleMain"
// }
// );
// return moduleCatalog;
//}
[转]基于MefBootstrapper的Bootstrapper的更多相关文章
- Wix 安装部署教程(九) --用WPF做安装界面
经常安装PC端的应用,特别是重装系统之后,大致分为两类.一类像QQ,搜狗输入法这样的.分三步走的:第一个页面可以自定义安装路径和软件许可.第二个页面显示安装进度条,第三个页面推荐其他应用.先不管人家怎 ...
- Prism6下的MEF:基于微软企业库的Cache
通常,应用程序可以将那些频繁访问的数据,以及那些需要大量处理时间来创建的数据存储在内存中,从而提高性能.基于微软的企业库,我们的快速创建一个缓存的实现. 新建PrismSample.Infrastru ...
- Nancy之基于Nancy.Hosting.Aspnet的小Demo
近来学习了一下Nancy这个框架,感觉挺好用的,就写篇简单的文章记录一下大致用法,由于是刚接触,写的代码 可能不规范,也没有具体的分层..莫吐槽... Nancy的官网:http://nancyfx. ...
- Nancy基于JwtBearer认证的使用与实现
前言 最近在看JSON Web Token(Jwt)相关的东西,但是发现在Nancy中直接使用Jwt的组件比较缺乏,所以就在空闲时间写了一个. 这个组件是开源的,不过目前只支持.NET Core,后续 ...
- 基于 Consul 实现 MagicOnion(GRpc) 服务注册与发现
0.简介 0.1 什么是 Consul Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置. 这里所谓的服务,不仅仅包括常用的 Api 这些服务,也包括软件开发过程 ...
- 浅谈基于Prism的软件系统的架构设计
很早就想写这么一篇文章来对近几年使用Prism框架来设计软件来做一次深入的分析了,但直到最近才开始整理,说到软件系统的设计这里面有太多的学问,只有经过大量的探索才能够设计出好的软件产品,就本人的理解, ...
- C# 一个基于.NET Core3.1的开源项目帮你彻底搞懂WPF框架Prism
--概述 这个项目演示了如何在WPF中使用各种Prism功能的示例.如果您刚刚开始使用Prism,建议您从第一个示例开始,按顺序从列表中开始.每个示例都基于前一个示例的概念. 此项目平台框架:.NET ...
- 最近帮客户实施的基于SQL Server AlwaysOn跨机房切换项目
最近帮客户实施的基于SQL Server AlwaysOn跨机房切换项目 最近一个来自重庆的客户找到走起君,客户的业务是做移动互联网支付,是微信支付收单渠道合作伙伴,数据库里存储的是支付流水和交易流水 ...
- 自定义基于 VLC 的视频播放器
前言(蛋疼的背景故事) 前段时间,接了一个小项目,有个需求是要在系统待机一段时间以后,循环播放 MV(类似于 Windows 系统的屏幕保护). 听到这个需求,我首先想到的是 MediaPlayer ...
随机推荐
- JavaScript - DOM相关
DOM节点分类 ( node ) : 元素节点 ( element node ) 属性节点 ( attribute node ) 文本节点 ( text node) DOM的相关操作 : 1. 查询元 ...
- 廖雪峰Java16函数式编程-2Stream-5filter
1.filter简介 Stream.filter()是一个转换方法,把一个Stream转换为另一个Stream. 所谓filter操作,就是对一个Stream的所有元素进行测试,不满足条件的元素就被过 ...
- C++ 俄罗斯方块
#include <iostream> #include <string.h> #include <stdlib.h> #include <time.h> ...
- css3技巧——产品列表之鼠标滑过效果translateY(三)
<div class="main"> <div class="view view-tenth"> <figure> < ...
- 数论剩余系——cf1089F
关于模和互质,很好的题目 /* n两个质因子 x,y有 ax+by=n-1 ax+by=n-1 ax+1+by=n y|ax+1 gcd(x,y)=1 ax%y,a取[1,y-1],就会有[1,y-1 ...
- Delphi屏幕截图的实现
首先要获得设备环境的句柄,可以通过GetDC函数来获得,对于这个函数,MSDN上是这样说明的 The GetDC function retrieves a handle to a device con ...
- poj2954Triangle
传送门 Pick定理 定点坐标为整点的三角形,面积为S,边上的整点个数为L,三角形内部整点个数为N S=N+L/2-1 //Achen #include<algorithm> #inclu ...
- js--判断当前环境是否为iphonex环境
/** * 判断是否是iphonex */ function getIsIphonex () { var u = navigator.userAgent; var isIOS = !!u.match( ...
- hdu多校第三场 1007 (hdu6609) Find the answer 线段树
题意: 给定一组数,共n个,第i次把第i个数扔进来,要求你删掉前i-1个数中的一些(不许删掉刚加进来这个数),使得前i个数相加的和小于m.问你对于每个i,最少需要删掉几个数字. 题解: 肯定是优先删大 ...
- NEERC 2015 Adjustment Office /// oj25993
题目大意: 输入n,q: 矩阵大小为n*n 每个位置的值为该位置的行数+列数 接下来q行 “R m”表示输出第m行的总和并整行消去 “C m”表示输出第m列的总和并整列消去 Sample Input ...