Como usar Prisim dentro de um ElementHost

Sou novo no Prism e estou tentando hospedar um controle Prisim em um ElementHost. Parece que estou perdendo algo muito básico. Eu tenho um único WinForm que contém um ElementHost. O código a seguir está no formulário:

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();

        Bootstrapper bootstrapper = new Bootstrapper();
        bootstrapper.Run();

        var child = bootstrapper.Container.Resolve<Shell>();
        elementHost.Child = child;

    }

O BootStrapper lida com regisration

public class Bootstrapper : UnityBootstrapper
{
    protected override DependencyObject CreateShell()
    {
        Container.RegisterType<MyView>();
        var shell = Container.Resolve<Shell>();
        return shell;
    }

    protected override IModuleCatalog GetModuleCatalog()
    {
        ModuleCatalog catalog = new ModuleCatalog();
        catalog.AddModule(typeof(MyModule));
        return catalog;
    }
}

O MyView.xaml nada mais é do que um rótulo neste momento.

Shell.xaml é um UserControl que contém o seguinte XAML:

<ItemsControl Name="MainRegion" cal:RegionManager.RegionName="MainRegion" />

O código do módulo é mínimo:

public class MyModule : IModule
{
    private readonly IRegionViewRegistry _regionViewRegistry;

    public MyModule(IRegionViewRegistry registry)
    {
        _regionViewRegistry = registry;   
    }

    public void Initialize()
    {
        _regionViewRegistry.RegisterViewWithRegion("MainRegion", typeof(MyView));
    }
}

Eu tenho vindo a investigar profundamente o código Prism tentando descobrir por que o View nunca é colocado na região. Eu estou sentindo falta de algo básico?

questionAnswers(2)

yourAnswerToTheQuestion