using System; using AI; using AI.AgentIntegration; using AI.Interface; using AI.Service; using Avalonia; using Microsoft.Extensions.DependencyInjection; namespace PcgDrawR { /// /// AvaloniaLoader 框架初始化类 /// public static class AvaloniaBootstrapper { private static bool isInitialized = false; /// /// 初始化 /// public static void EnsureInitialized() { if (isInitialized) { return; } // 供 AI 模块 DI 使用(列头匹配等动态表单需调用 GetColumns) AppControllerHolder.Instance = AppController.Instance; InitializeAvalonia(); InitializeAIModule(); isInitialized = true; } private static void InitializeAvalonia() { AppBuilder.Configure() .UsePlatformDetect() .SetupWithoutStarting(); } private static void InitializeAIModule() { var app = (App)Avalonia.Application.Current; var kernelService = app.ServiceProvider.GetRequiredService() as KernelService; var formNotifier = app.ServiceProvider.GetService(); kernelService?.Initialize(AppController.Instance, formNotifier); } } }