using Avalonia;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
using Avalonia_PC.ViewModels;
using Avalonia_PC.Views;
using Microsoft.Extensions.DependencyInjection;
namespace Avalonia_PC
{
///
/// Avalonia 应用程序入口类,负责初始化 XAML 资源和设置主窗口。
///
public partial class App : Application
{
///
/// 加载 Avalonia XAML 资源。
///
public override void Initialize()
{
AvaloniaXamlLoader.Load(this);
}
///
/// 框架初始化完成后设置主窗口和数据上下文。
///
public override void OnFrameworkInitializationCompleted()
{
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
desktop.MainWindow = Program.Services.GetRequiredService();
desktop.MainWindow.DataContext = new MainWindowViewModel();
}
base.OnFrameworkInitializationCompleted();
}
}
}