forked from amkovkov/GranuSightSoftware2
refactor: App.axaml.cs
This commit is contained in:
+10
-7
@@ -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<MainViewModel>()
|
||||
};
|
||||
// var mainView = new GSS2.UI.Core.Views.CameraView(_services.GetService<ILogger<GSS2.UI.Core.Views.CameraView>>()!)
|
||||
// {
|
||||
// DataContext = _services.GetRequiredService<GSS2.UI.Core.ViewModels.CameraViewModel>()
|
||||
// };
|
||||
|
||||
// Создаём главный элемент управления
|
||||
// на основании типа ApplicationLifetime, который зависит от того как мы запустили приложение
|
||||
|
||||
Reference in New Issue
Block a user