diff --git a/GSS2/App.axaml.cs b/GSS2/App.axaml.cs index 1e61cf4..fa1c6b8 100644 --- a/GSS2/App.axaml.cs +++ b/GSS2/App.axaml.cs @@ -1,3 +1,7 @@ +using Microsoft.Extensions.Hosting; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Logging; + using Avalonia.Controls.ApplicationLifetimes; using Avalonia.Markup.Xaml; using Avalonia.Threading; @@ -8,10 +12,6 @@ using GSS2.UI.Core; using GSS2.UI.Core.Services; using GSS2.UI.Core.ViewModels; -using Microsoft.Extensions.Hosting; -using Microsoft.Extensions.DependencyInjection; -using Microsoft.Extensions.Logging; - namespace GSS2; public partial class Application : Avalonia.Application @@ -40,7 +40,6 @@ public partial class Application : Avalonia.Application public override void Initialize() { AvaloniaXamlLoader.Load(this); - // Добавляем наш DependencyInjectionViewLocator в DataTemplates приложения DataTemplates.Add(_viewLocator); } @@ -65,12 +64,12 @@ public partial class Application : Avalonia.Application return; // Иначе это событие вызвано не из интерфейса и графический интерфейс нужно закрыть - Dispatcher.InvokeShutdown(); + Dispatcher.UIThread.InvokeShutdown(); _allShutdownSequencesRunning = true; }); // Создаём обработчик события закрытия графического интерфейса - Dispatcher.ShutdownStarted += (_, _) => + Dispatcher.UIThread.ShutdownStarted += (_, _) => { // Если всё что нужно для закрытия приложения уже вызвано, то ничего не делаем if (_allShutdownSequencesRunning) @@ -104,6 +103,10 @@ public partial class Application : Avalonia.Application { DataContext = _services.GetRequiredService() }; + // var mainView = new GSS2.UI.Core.Views.CameraView(_services.GetService>()!) + // { + // DataContext = _services.GetRequiredService() + // }; // Создаём главный элемент управления // на основании типа ApplicationLifetime, который зависит от того как мы запустили приложение