Вы на 90%, вам не хватало только одного.
Добавьте это к вашему Application_Startup в App.xaml.cs
container = builder.Build();
RootVisual = new MainWindow(container.Resolve<IHelper>());
Так что теперь ваш Application_Statup будет выглядетьтаким образом, он создаст ваш контейнер и позволит вам внедрить зарегистрированные классы с контейнером в ваш класс (ы).И убедитесь, что вы правильно расположили контейнер на Application_Exit.
IContainer container;
private void Application_Startup(object sender, StartupEventArgs e)
{
var builder = new ContainerBuilder();
builder.Register(c => MyFactory.CreateHelper()).As<IHelper>();
container = builder.Build()
RootVisual = new MainWindow(container.Resolve<IHelper>());
}
private void Application_Exit(object sender, EventArgs e)
{
container.Dispose();
}