From 85913991af5a9c95413af3518e4355453df827f5 Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 11 Jul 2025 09:57:43 +0800 Subject: [PATCH 1/2] Improve EntityActions initialization and action check https://abp.io/support/questions/9597/ --- .../Components/EntityActions.razor.cs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/framework/src/Volo.Abp.BlazoriseUI/Components/EntityActions.razor.cs b/framework/src/Volo.Abp.BlazoriseUI/Components/EntityActions.razor.cs index ec1428e8aa..d4ec097192 100644 --- a/framework/src/Volo.Abp.BlazoriseUI/Components/EntityActions.razor.cs +++ b/framework/src/Volo.Abp.BlazoriseUI/Components/EntityActions.razor.cs @@ -38,20 +38,23 @@ public partial class EntityActions : ComponentBase [Inject] public IStringLocalizer UiLocalizer { get; set; } = default!; + public bool Initialized { get; set; } + internal void AddAction(EntityAction action) { Actions.Add(action); } - - private bool DisabledOrNoActions() + + protected virtual bool DisabledOrNoActions() { - return Disabled || !Actions.Any(t => t is { Visible: true, HasPermission: true }); + return !Initialized && (Disabled || Actions.All(t => !t.Visible || !t.HasPermission)); } protected override void OnInitialized() { base.OnInitialized(); ToggleText = UiLocalizer["Actions"]; + Initialized = true; } protected async override Task OnAfterRenderAsync(bool firstRender) From ab1d5ec8fa0fc9faefd69200787728df6ec2b48a Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 11 Jul 2025 10:18:29 +0800 Subject: [PATCH 2/2] Refactor EntityActions initialization and disabled logic --- .../Volo.Abp.BlazoriseUI/Components/EntityActions.razor.cs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/framework/src/Volo.Abp.BlazoriseUI/Components/EntityActions.razor.cs b/framework/src/Volo.Abp.BlazoriseUI/Components/EntityActions.razor.cs index d4ec097192..10506545dd 100644 --- a/framework/src/Volo.Abp.BlazoriseUI/Components/EntityActions.razor.cs +++ b/framework/src/Volo.Abp.BlazoriseUI/Components/EntityActions.razor.cs @@ -38,8 +38,6 @@ public partial class EntityActions : ComponentBase [Inject] public IStringLocalizer UiLocalizer { get; set; } = default!; - public bool Initialized { get; set; } - internal void AddAction(EntityAction action) { Actions.Add(action); @@ -47,14 +45,13 @@ public partial class EntityActions : ComponentBase protected virtual bool DisabledOrNoActions() { - return !Initialized && (Disabled || Actions.All(t => !t.Visible || !t.HasPermission)); + return Disabled || (Actions.Any() && Actions.All(t => !t.Visible || !t.HasPermission)); } protected override void OnInitialized() { base.OnInitialized(); ToggleText = UiLocalizer["Actions"]; - Initialized = true; } protected async override Task OnAfterRenderAsync(bool firstRender)