@inherits LayoutComponentBase @implements IDisposable @inject ThemeState ThemeState @inject IJSRuntime JS
@Body
An unhandled error has occurred. Reload 🗙
@code { private bool _isInteractive; protected override void OnInitialized() { ThemeState.OnChange += OnThemeChanged; } protected override async Task OnAfterRenderAsync(bool firstRender) { if (firstRender) { _isInteractive = true; } await ApplyDxDarkOverrideAsync(); } private async void OnThemeChanged() { StateHasChanged(); if (_isInteractive) { await ApplyDxDarkOverrideAsync(); } } private async Task ApplyDxDarkOverrideAsync() { if (!_isInteractive) return; try { bool needsOverride = ThemeState.IsDarkMode && !ThemeState.IsNativeDarkTheme; await JS.InvokeVoidAsync("setDxDarkOverride", needsOverride); } catch (JSException) { // JS-Funktion noch nicht verfügbar – kein Circuit-Crash } } private void ToggleTheme() { ThemeState.SetDarkMode(!ThemeState.IsDarkMode); } public void Dispose() { ThemeState.OnChange -= OnThemeChanged; } }