/// <summary> /// The constructor which takes all the DI objects /// </summary> /// <param name="logger">ILogger</param> /// <param name="applicationLifetime"></param> /// <param name="serviceProvider">IServiceProvider</param> /// <param name="wpfContext">IWpfContext</param> public WpfHostedService(ILogger <WpfHostedService> logger, IApplicationLifetime applicationLifetime, IServiceProvider serviceProvider, IWpfContext wpfContext) { _logger = logger; _applicationLifetime = applicationLifetime; _serviceProvider = serviceProvider; _wpfContext = wpfContext; }
/// <summary> /// Helper method to retrieve the IWpfContext /// </summary> /// <param name="properties">IDictionary</param> /// <param name="wpfContext">IWpfContext out value</param> /// <returns>bool if there was already an IWpfContext</returns> private static bool TryRetrieveWpfContext(this IDictionary <object, object> properties, out IWpfContext wpfContext) { if (properties.TryGetValue(WpfContextKey, out var wpfContextAsObject)) { wpfContext = (IWpfContext)wpfContextAsObject; return(true); } wpfContext = new WpfContext(); properties[WpfContextKey] = wpfContext; return(false); }
/// <summary> /// CaliburnMicroBootstrapper /// </summary> /// <param name="logger">ILogger</param> /// <param name="serviceProvider">IServiceProvider</param> /// <param name="loggerFactory">ILoggerFactory</param> /// <param name="windowManager">IWindowManager</param> /// <param name="wpfContext">IWpfContext</param> public CaliburnMicroBootstrapper( ILogger <CaliburnMicroBootstrapper> logger, IServiceProvider serviceProvider, ILoggerFactory loggerFactory, IWindowManager windowManager, IWpfContext wpfContext) { _logger = logger; _serviceProvider = serviceProvider; _loggerFactory = loggerFactory; _windowManager = windowManager; _wpfContext = wpfContext ?? throw new ArgumentNullException(nameof(wpfContext)); }
/// <summary> /// Constructor which is called from the IWpfContext /// </summary> /// <param name="wpfContext">IWpfContext</param> public WpfThread(IWpfContext wpfContext) { _wpfContext = wpfContext; // Create a thread which runs WPF var newWpfThread = new Thread(WpfThreadStart) { IsBackground = true }; // Set the apartment state newWpfThread.SetApartmentState(ApartmentState.STA); // Start the new WPF thread newWpfThread.Start(); }
/// <summary> /// CaliburnMicroBootstrapper /// </summary> /// <param name="logger">ILogger</param> /// <param name="serviceProvider">IServiceProvider</param> /// <param name="loggerFactory">ILoggerFactory</param> /// <param name="windowManager">IWindowManager</param> /// <param name="wpfContext">IWpfContext</param> /// <param name="caliburnMicroContext">ICaliburnMicroContext</param> public CaliburnMicroBootstrapper( ILogger <CaliburnMicroBootstrapper> logger, IServiceProvider serviceProvider, ILoggerFactory loggerFactory, IWindowManager windowManager, IWpfContext wpfContext, ICaliburnMicroContext caliburnMicroContext) { this.logger = logger; this.serviceProvider = serviceProvider; this.loggerFactory = loggerFactory; this.windowManager = windowManager; this.wpfContext = wpfContext ?? throw new ArgumentNullException(nameof(wpfContext)); this.caliburnMicroContext = caliburnMicroContext; }
/// <summary> /// The constructor which takes all the DI objects /// </summary> /// <param name="logger">ILogger</param> /// <param name="wpfThread">WpfThread</param> /// <param name="wpfContext">IWpfContext</param> public WpfHostedService(ILogger <WpfHostedService> logger, WpfThread wpfThread, IWpfContext wpfContext) { this.logger = logger; this.wpfThread = wpfThread; this.wpfContext = wpfContext; }
public MainViewModel(IWpfContext wpfContext, IServiceProvider serviceProvider, IWindowManager windowManager) { _wpfContext = wpfContext; _serviceProvider = serviceProvider; _windowManager = windowManager; }
public MainViewModel(IWpfContext wpfContext, IServiceProvider serviceProvider, IWindowManager windowManager) { this.wpfContext = wpfContext; this.serviceProvider = serviceProvider; this.windowManager = windowManager; }
/// <summary> /// The constructor which takes all the DI objects /// </summary> /// <param name="logger">ILogger</param> /// <param name="wpfThread">WpfThread</param> /// <param name="wpfContext">IWpfContext</param> public WpfHostedService(ILogger <WpfHostedService> logger, WpfThread wpfThread, IWpfContext wpfContext) { _logger = logger; _wpfThread = wpfThread; _wpfContext = wpfContext; }
/// <summary> /// The constructor which takes all the DI objects /// </summary> /// <param name="logger">ILogger</param> /// <param name="serviceProvider">IServiceProvider</param> /// <param name="wpfContext">IWpfContext</param> public WpfHostedService(ILogger <WpfHostedService> logger, IServiceProvider serviceProvider, IWpfContext wpfContext) { _logger = logger; _serviceProvider = serviceProvider; _wpfContext = wpfContext; }