概述
在Caliburn.Micro中,我们一般在引导程序中实例化SimpleContainer,然后在Configure中去注入我们的实例,那如果我不想在一开始就注入所有实例,我想在其他类模块去实现动态注入,怎么去实现呢?这节就这个场景通过实例展开讲解.
实例
首先是继承引导程序类并重写我们实现IOC容器需要用到的几个方法
public class HelloBootstrapper : BootstrapperBase
{
public HelloBootstrapper()
{
Initialize();
}
protected override void OnStartup(object sender, StartupEventArgs e)
{
//DisplayRootViewFor<MainWindowViewModel>();
DisplayRootViewFor<ILogin>();
}
private SimpleContainer container;
protected override void Configure()
{
container = new SimpleContainer();
container.Singleton<SimpleContainer>();
}
protected override object GetInstance(Type service, string key)
{