sa/Stars Assistant/App.axaml.cs

40 lines
1018 B
C#

using Avalonia;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
using StarsAssistant.ViewModels;
using StarsAssistant.Views;
using Splat;
using StarsAssistant.Services;
namespace StarsAssistant;
public partial class App : Application
{
public override void Initialize()
{
AvaloniaXamlLoader.Load(this);
}
public override void OnFrameworkInitializationCompleted()
{
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
Game game = new(desktop.Args);
game.RegisterServicesForGame();
desktop.MainWindow = new MainWindow
{
DataContext = new MainWindowViewModel(),
};
base.OnFrameworkInitializationCompleted();
game.StartBackgroundServices();
}
else
{
throw new InvalidOperationException("This app supports only Desktop mode.");
}
}
}