using Avalonia; using Avalonia.Controls.ApplicationLifetimes; using Avalonia.Markup.Xaml; using Microsoft.Extensions.DependencyInjection; using Presence.Desktop.DI; using Presence.Desktop.ViewModels; using Presence.Desktop.Views; using domain.UseCase; namespace Presence.Desktop { public partial class App : Application { public override void Initialize() { AvaloniaXamlLoader.Load(this); } public override void OnFrameworkInitializationCompleted() { var serviceCollection = new ServiceCollection(); serviceCollection.AddCommonService(); serviceCollection.AddSingleton(); var services = serviceCollection.BuildServiceProvider(); var groupUseCase = services.GetRequiredService(); if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop) { desktop.MainWindow = new MainWindow() { DataContext = new MainWindowViewModel(services), }; } base.OnFrameworkInitializationCompleted(); } } }