using System.Windows;
using DryIoc;
using MaterialModernWPF.Module;
using MaterialModernWPF.Service;
using MaterialModernWPF.View;
using Prism.Ioc;
using Prism.Modularity;
namespace MaterialModernWPF
{
///
/// Interaktionslogik für "App.xaml"
///
public partial class App
{
protected override Rules CreateContainerRules()
{
return Rules.Default.WithAutoConcreteTypeResolution()
.With(Made.Of(FactoryMethod.ConstructorWithResolvableArguments))
.WithDefaultIfAlreadyRegistered(IfAlreadyRegistered.AppendNotKeyed);
}
protected override void RegisterTypes(IContainerRegistry containerRegistry)
{
containerRegistry.Register();
containerRegistry.Register();
containerRegistry.RegisterSingleton();
containerRegistry.RegisterSingleton();
containerRegistry.RegisterSingleton();
containerRegistry.RegisterForNavigation();
}
protected override Window CreateShell()
{
return Container.Resolve();
}
protected override void ConfigureModuleCatalog(IModuleCatalog moduleCatalog)
{
moduleCatalog.AddModule(typeof(MainModule));
base.ConfigureModuleCatalog(moduleCatalog);
}
}
}