Prism Sample 7 Modules LoadManual

这种模块是手动载入的,需要的时候手动加载。

在app.xaml.cs中注册为按需加载,代码

protected override void ConfigureModuleCatalog(IModuleCatalog moduleCatalog)
        {
            var moduleAType = typeof(ModuleAModule);
            moduleCatalog.AddModule(new ModuleInfo()
            {
                ModuleName = moduleAType.Name,
                ModuleType = moduleAType.AssemblyQualifiedName,
                InitializationMode = InitializationMode.OnDemand
            });
        }

其中最后行是指定手动加载。

在加载时,例中用了一个按钮来手动加载

 public partial class MainWindow : Window
    {
        IModuleManager _moduleManager;

        public MainWindow(IModuleManager moduleManager)
        {
            InitializeComponent();
            _moduleManager = moduleManager;
        }

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            _moduleManager.LoadModule("ModuleAModule");
        }
    }

 

posted @ 2021-06-07 15:38  cbaa  阅读(72)  评论(0编辑  收藏  举报