Files
avaloniaForm/AvaloniaLinuxForm/App.axaml.cs
2025-09-30 14:35:09 +08:00

50 lines
1.2 KiB
C#

using Avalonia;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
using AvaloniaLinuxForm.ViewModels;
using AvaloniaLinuxForm.Views;
using AvaloniaWebView;
namespace AvaloniaLinuxForm;
public partial class App : Application
{
public override void Initialize()
{
AvaloniaXamlLoader.Load(this);
}
public override void OnFrameworkInitializationCompleted()
{
// 初始化数据库
SQLiteUtil.InitDatabase();
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
desktop.MainWindow = new MainWindow
{
DataContext = new MainViewModel()
};
}
else if (ApplicationLifetime is ISingleViewApplicationLifetime singleViewPlatform)
{
singleViewPlatform.MainView = new MainView
{
DataContext = new MainViewModel()
};
}
base.OnFrameworkInitializationCompleted();
}
public override void RegisterServices()
{
base.RegisterServices();
// if you use only WebView
AvaloniaWebViewBuilder.Initialize(default);
}
}