zoukankan      html  css  js  c++  java
  • [转]基于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;
            //}

  • 相关阅读:
    Java学习图形界面+网络编程案例---------网络简易通讯
    Java图形界面学习---------简易登录界面
    Python-Collections模块之Counter
    Python-面试题-字符串(str)
    Python-面试题-数学运算(math)
    Python-面试题-列表(list)
    python-数据类型-字符串(Str)
    Pytest框架实现一些前后置(固件、夹具)的处理
    Pytest框架运行方式(主函数、命令行、配置、执行顺序)
    Jenkins配置maven+Allure
  • 原文地址:https://www.cnblogs.com/luohengstudy/p/3545874.html
Copyright © 2011-2022 走看看