You will need to override OnStartup to display the root view / viewmodel:
protected override void OnStartup(object sender, System.Windows.StartupEventArgs e) { DisplayRootViewFor<IAppViewModel>(); }
This extra call has replaced the previous, common bootloader and allows you to choose the root mode for your application at runtime.
You also need to override GetInstance to have a Caliburn hook in Ninject:
protected override object GetInstance(Type serviceType, string key) { return container.Get(serviceType); }
This is called by Caliburn.Micro whenever it needs to create something, so this is where your one-stop shop for injecting Ninject (other IoC containers!) Enters.
As for the modern textbook; there are not many of them since Caliburn.Micro went to version 2, however, official documentation is usually very useful.
EDIT: Another thing you have to do! Make sure your bootstrapper constructor calls Initialize :
public CbmBootstrapper () { Initialize(); }
This will launch Caliburn.Micro in action ...
source share