Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 等待ModuleCatalog完成模块加载_C#_Wpf_Prism - Fatal编程技术网

C# 等待ModuleCatalog完成模块加载

C# 等待ModuleCatalog完成模块加载,c#,wpf,prism,C#,Wpf,Prism,是否可以等待ModuleCatalog完成加载一个模块,然后发送一个事件?为了知道模块何时完成加载,ModuleManager提供了一个LoadModuleCompleted事件,您可以通过从IModuleManager界面引用来处理该事件: this.moduleManager.LoadModuleCompleted += this.ModuleManager_LoadModuleCompleted; 因此,您将在ModuleManager\u LoadModuleCompleted(obj

是否可以等待ModuleCatalog完成加载一个模块,然后发送一个事件?

为了知道模块何时完成加载,ModuleManager提供了一个LoadModuleCompleted事件,您可以通过从IModuleManager界面引用来处理该事件:

this.moduleManager.LoadModuleCompleted += this.ModuleManager_LoadModuleCompleted;
因此,您将在
ModuleManager\u LoadModuleCompleted(objectsender,LoadModuleCompletedEventArgs e)
方法上处理相关任务

以下MSDN Prism Guide部分介绍了ModuleManager的此功能:

有关更多信息,您可以查看显示如何使用此事件的模块化快速启动。在以下链接中找到可供下载的快速入门:

我希望这对你有帮助,
注意。

模块日志是否利用模块管理器加载单个模块?我需要这主要是为了一个SplashScreen的加载通知。如果我理解正确,你会问每个加载模块是否引发一个事件。这是正确的,您可以在ModularityWithUnity快速启动上看到这种行为,该快速启动记录每个模块加载时的模块名称(ModuleManager_LoadModuleCompleted handler方法在Shell.xaml.cs Modularity Quickstart中实现)。关于您的问题,ModuleManager初始化ModuleCatalog,然后从ModuleCatalog加载每个可用的模块。您可以在ModuleManager.cs类的Prism库源代码中看到这一点。