feat: implement singleton pattern for PaletteDemoViewModel and add initialization check

This commit is contained in:
Dong Bin
2026-04-24 18:17:40 +08:00
parent 496aef2126
commit 897a71aa13
2 changed files with 10 additions and 5 deletions

View File

@@ -14,6 +14,8 @@ namespace Semi.Avalonia.Demo.ViewModels;
public partial class PaletteDemoViewModel : ObservableObject
{
public static Lazy<PaletteDemoViewModel> Instance { get; } = new(() => new PaletteDemoViewModel());
public bool IsInitialized { get; private set; }
private readonly string[] _predefinedColorNames =
[
"Red", "Pink", "Purple", "Violet", "Indigo",
@@ -44,6 +46,7 @@ public partial class PaletteDemoViewModel : ObservableObject
InitializePalette();
InitializeFunctionalColors();
InitializeShadows();
IsInitialized = true;
}
private void InitializePalette()
@@ -289,4 +292,4 @@ public partial class ShadowGroupViewModel : ObservableObject
}
}
}
}
}