From 181ca6745f3f5329b5da4772fb5fc5e649b56d33 Mon Sep 17 00:00:00 2001 From: maliming Date: Tue, 28 Jul 2026 18:10:10 +0800 Subject: [PATCH] Handle mud message alert and menu updates on the dispatcher --- .../Components/UiMessageAlert.razor.cs | 15 +++++++++------ .../Themes/Basic/NavMenu.razor.cs | 2 +- .../Themes/Basic/NavToolbar.razor | 2 +- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/framework/src/Volo.Abp.MudBlazorUI/Components/UiMessageAlert.razor.cs b/framework/src/Volo.Abp.MudBlazorUI/Components/UiMessageAlert.razor.cs index 58ed2fae1b..ccc1f2c085 100644 --- a/framework/src/Volo.Abp.MudBlazorUI/Components/UiMessageAlert.razor.cs +++ b/framework/src/Volo.Abp.MudBlazorUI/Components/UiMessageAlert.razor.cs @@ -88,13 +88,16 @@ public partial class UiMessageAlert : ComponentBase, IDisposable private async void OnMessageReceived(object? sender, UiMessageEventArgs e) { - MessageType = e.MessageType; - Message = e.Message; - Title = e.Title; - Options = e.Options; - Callback = e.Callback; + await InvokeAsync(async () => + { + MessageType = e.MessageType; + Message = e.Message; + Title = e.Title; + Options = e.Options; + Callback = e.Callback; - await ShowMessageAlert(); + await ShowMessageAlert(); + }); } protected virtual async Task ShowMessageAlert() diff --git a/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Web.MudBlazorBasicTheme/Themes/Basic/NavMenu.razor.cs b/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Web.MudBlazorBasicTheme/Themes/Basic/NavMenu.razor.cs index 8387850970..3fa39de6da 100644 --- a/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Web.MudBlazorBasicTheme/Themes/Basic/NavMenu.razor.cs +++ b/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Web.MudBlazorBasicTheme/Themes/Basic/NavMenu.razor.cs @@ -27,7 +27,7 @@ public partial class NavMenu : IDisposable _ = InvokeAsync(async () => { Menu = await MenuManager.GetMainMenuAsync(); - StateHasChanged(); + await InvokeAsync(StateHasChanged); }); } diff --git a/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Web.MudBlazorBasicTheme/Themes/Basic/NavToolbar.razor b/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Web.MudBlazorBasicTheme/Themes/Basic/NavToolbar.razor index 91ded03c1e..bc62b71ca5 100644 --- a/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Web.MudBlazorBasicTheme/Themes/Basic/NavToolbar.razor +++ b/modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Web.MudBlazorBasicTheme/Themes/Basic/NavToolbar.razor @@ -49,7 +49,7 @@ _ = InvokeAsync(async () => { await GetToolbarItemRendersAsync(); - StateHasChanged(); + await InvokeAsync(StateHasChanged); }); }