public void Test()
        {
            var container = CompositionRoot.CreateContainer();
            var types     = typeof(MainViewModelBase).Assembly.ExportedTypes.ThatImplement <ReactiveObject>().ToList();

            foreach (var type in types)
            {
                container.Locate(type);
            }
        }
Example #2
0
        static async Task <int> Main(string[] args)
        {
            var builder = new CommandLineBuilder()
                          .UseDefaults()
                          .UseExceptionHandler((exception, context) =>
            {
                Log.Error(exception, "An error has occurred: {Error}",
                          exception?.InnerException?.Message ?? exception?.Message);
            })
                          .Configure(CompositionRoot.CreateContainer())
                          .Build();

            return(await builder.InvokeAsync(args));
        }
Example #3
0
        public static void StartShellApp <TAppBuilder, TMainWindow>(this TAppBuilder builder, string appName, IDockFactory layoutFactory = null, Func <object> dataContextProvider = null) where TAppBuilder : AppBuilderBase <TAppBuilder>, new() where TMainWindow : Window, new()
        {
            builder.UseReactiveUI().AfterSetup(_ =>
            {
                Platform.AppName = appName;
                Platform.Initialise();

                var extensionManager = new ExtensionManager();
                var container        = CompositionRoot.CreateContainer(extensionManager);

                IoC.Initialise(container);

                ShellViewModel.Instance = IoC.Get <ShellViewModel>();

                ShellViewModel.Instance.Initialise(layoutFactory);
            }).Start <TMainWindow>(dataContextProvider);
        }
Example #4
0
        public static void StartShellApp <TAppBuilder>(this TAppBuilder builder, string appName, ShellAppMainDelegate main, string[] args, IFactory layoutFactory = null)
            where TAppBuilder : AppBuilderBase <TAppBuilder>, new()
        {
            builder
            .UseReactiveUI()
            .AfterSetup(_ =>
            {
                Platform.AppName = appName;
                Platform.Initialise();

                var extensionManager = new ExtensionManager();
                var container        = CompositionRoot.CreateContainer(extensionManager);

                IoC.Initialise(container);

                ShellViewModel.Instance = IoC.Get <ShellViewModel>();

                ShellViewModel.Instance.Initialise(layoutFactory);

                main(args);
            }).StartWithClassicDesktopLifetime(args, ShutdownMode.OnMainWindowClose);
        }
Example #5
0
 public Locator()
 {
     container = CompositionRoot.CreateContainer();
 }
Example #6
0
 public Composition()
 {
     container = CompositionRoot.CreateContainer();
 }