App.axaml.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. using Avalonia;
  2. using Avalonia.Controls.ApplicationLifetimes;
  3. using Avalonia.Data.Core.Plugins;
  4. using Avalonia.Markup.Xaml;
  5. using FxpConvert.Common;
  6. #if DEBUG
  7. using HotAvalonia;
  8. #endif
  9. using ShakerApp.ViewModels;
  10. using ShakerApp.Views;
  11. using System;
  12. using System.Globalization;
  13. using System.Linq;
  14. using System.Runtime.InteropServices;
  15. namespace ShakerApp;
  16. public partial class App : Application
  17. {
  18. public unsafe override void Initialize()
  19. {
  20. #if DEBUG
  21. if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
  22. {
  23. this.EnableHotReload();
  24. }
  25. #endif
  26. AvaloniaXamlLoader.Load(this);
  27. }
  28. public override void OnFrameworkInitializationCompleted()
  29. {
  30. BindingPlugins.DataValidators.RemoveAt(0);
  31. ShakerSettingViewModel.Instance.Init();
  32. if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
  33. {
  34. if (desktop.Args!.Contains("-debug"))
  35. {
  36. ViewModels.MainViewModel.Default.CanDebug = true;
  37. }
  38. desktop.MainWindow = new MainWindow();
  39. }
  40. base.OnFrameworkInitializationCompleted();
  41. Window1 window = new Window1();
  42. window.Show();
  43. }
  44. }