App.xaml.cs 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. using System;
  2. using Avalonia;
  3. using Avalonia.Controls.ApplicationLifetimes;
  4. using Avalonia.Markup.Xaml;
  5. using Avalonia.Markup.Xaml.Styling;
  6. using Avalonia.Styling;
  7. namespace ControlCatalog
  8. {
  9. public class App : Application
  10. {
  11. public static Styles FluentDark = new Styles
  12. {
  13. new StyleInclude(new Uri("avares://ControlCatalog/Styles"))
  14. {
  15. Source = new Uri("avares://Avalonia.Themes.Fluent/Accents/FluentDark.xaml")
  16. },
  17. };
  18. public static Styles FluentLight = new Styles
  19. {
  20. new StyleInclude(new Uri("avares://ControlCatalog/Styles"))
  21. {
  22. Source = new Uri("avares://Avalonia.Themes.Fluent/Accents/FluentLight.xaml")
  23. },
  24. };
  25. public static Styles DefaultLight = new Styles
  26. {
  27. new StyleInclude(new Uri("resm:Styles?assembly=ControlCatalog"))
  28. {
  29. Source = new Uri("resm:Avalonia.Themes.Default.Accents.BaseLight.xaml?assembly=Avalonia.Themes.Default")
  30. },
  31. new StyleInclude(new Uri("resm:Styles?assembly=ControlCatalog"))
  32. {
  33. Source = new Uri("resm:Avalonia.Themes.Default.DefaultTheme.xaml?assembly=Avalonia.Themes.Default")
  34. },
  35. };
  36. public static Styles DefaultDark = new Styles
  37. {
  38. new StyleInclude(new Uri("resm:Styles?assembly=ControlCatalog"))
  39. {
  40. Source = new Uri("resm:Avalonia.Themes.Default.Accents.BaseDark.xaml?assembly=Avalonia.Themes.Default")
  41. },
  42. new StyleInclude(new Uri("resm:Styles?assembly=ControlCatalog"))
  43. {
  44. Source = new Uri("resm:Avalonia.Themes.Default.DefaultTheme.xaml?assembly=Avalonia.Themes.Default")
  45. },
  46. };
  47. public override void Initialize()
  48. {
  49. AvaloniaXamlLoader.Load(this);
  50. Styles.Insert(0, FluentDark);
  51. }
  52. public override void OnFrameworkInitializationCompleted()
  53. {
  54. if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktopLifetime)
  55. desktopLifetime.MainWindow = new MainWindow();
  56. else if (ApplicationLifetime is ISingleViewApplicationLifetime singleViewLifetime)
  57. singleViewLifetime.MainView = new MainView();
  58. base.OnFrameworkInitializationCompleted();
  59. }
  60. }
  61. }