using Avalonia.Controls.ApplicationLifetimes; using Avalonia.Markup.Xaml; using Microsoft.Extensions.DependencyInjection; namespace CatalogLite; public partial class App : Avalonia.Application { public override void Initialize() => AvaloniaXamlLoader.Load(this); public override void OnFrameworkInitializationCompleted() { if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop) { if (ExpirationGuard.IsExpired(out var expirationDate)) { var expiredWindow = new ExpiredWindow(expirationDate); expiredWindow.Closed += (_, _) => desktop.Shutdown(); desktop.MainWindow = expiredWindow; } else { desktop.MainWindow = Program.ServiceProvider.GetRequiredService(); } } base.OnFrameworkInitializationCompleted(); } }