前言:
以前用mvvmlight实现了MVVM分离,以及模块间消息通知,感觉很方便。但随着功能的增多,在不同的地方用到不同的类,不断的new,所以不断的设置单例模式,以及锁。
后来发现prism这个框架,有了IOC功能,果断引入,真的是谁用谁爽。
前面学习痕迹大神的教程,完成了整个项目。这里放上连接,需要的请移步。WPF Prism框架合集(2.创建Prism应用程序) - 痕迹g - 博客园
趁着现在稍微空闲一些,重新理解一遍。
例子一:
新建一个WPF项目。
新建一个类,继承自PrismBootstrapper,并重写方法
public class Bootstrapper : PrismBootstrapper
{
protected override DependencyObject CreateShell()
{
return Container.Resolve<MainWindow>();
}
protected override void RegisterTypes(IContainerRegistry containerRegistry)
{
}
}
PrismBootstrapper是引导程序
看一下源码
关于这块的详细解释,可以查看
public partial class App : Application
{
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
var bootstrapper = new Bootstrapper();
bootstrapper.Run();
}
}
原始文档参考:Introduction to Prism | Prism
https://prismlibrary.com/docs/index.html