From f284f4466f99f15f9c9d28253b32e74203ca8345 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sat, 18 Apr 2026 16:09:06 +0800 Subject: [PATCH 1/2] =?UTF-8?q?doc:=20=E6=9B=B4=E6=96=B0=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/BootstrapBlazor/Components/Button/ButtonBase.cs | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/BootstrapBlazor/Components/Button/ButtonBase.cs b/src/BootstrapBlazor/Components/Button/ButtonBase.cs index 31f97e4be12..47f28a4d4a7 100644 --- a/src/BootstrapBlazor/Components/Button/ButtonBase.cs +++ b/src/BootstrapBlazor/Components/Button/ButtonBase.cs @@ -206,8 +206,7 @@ protected override void OnInitialized() } /// - /// OnParametersSet 方法 - /// OnParametersSet method + /// /// protected override void OnParametersSet() { @@ -223,8 +222,7 @@ protected override void OnParametersSet() private bool _prevDisable; /// - /// OnAfterRenderAsync 方法 - /// OnAfterRenderAsync method + /// /// /// protected override async Task OnAfterRenderAsync(bool firstRender) @@ -329,8 +327,7 @@ public virtual async Task RemoveTooltip() } /// - /// DisposeAsyncCore 方法 - /// DisposeAsyncCore method + /// /// /// protected override async ValueTask DisposeAsync(bool disposing) From c6f8ad84573e9cc1e0d6f7e07592680ae690c54d Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sat, 18 Apr 2026 16:09:35 +0800 Subject: [PATCH 2/2] =?UTF-8?q?refactor:=20=E5=A2=9E=E5=8A=A0=20OnClick=20?= =?UTF-8?q?=E9=87=8D=E7=BD=AE=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Components/Button/ButtonBase.cs | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/BootstrapBlazor/Components/Button/ButtonBase.cs b/src/BootstrapBlazor/Components/Button/ButtonBase.cs index 47f28a4d4a7..a854bdb69c6 100644 --- a/src/BootstrapBlazor/Components/Button/ButtonBase.cs +++ b/src/BootstrapBlazor/Components/Button/ButtonBase.cs @@ -3,8 +3,6 @@ // See the LICENSE file in the project root for more information. // Maintainer: Argo Zhang(argo@live.ca) Website: https://www.blazor.zone -using Microsoft.AspNetCore.Components.Web; - namespace BootstrapBlazor.Components; /// @@ -65,7 +63,7 @@ public abstract class ButtonBase : TooltipWrapperBase /// Gets or sets the OnClick event /// [Parameter] - public EventCallback OnClick { get; set; } + public EventCallback OnClick { get; set; } /// /// 获得/设置 OnClick 事件不刷新父组件 @@ -334,6 +332,16 @@ protected override async ValueTask DisposeAsync(bool disposing) { if (disposing) { + if (OnClick.HasDelegate) + { + OnClick = EventCallback.Empty; + } + + if (IsAsync && ValidateForm != null) + { + ValidateForm.UnregisterAsyncSubmitButton(this); + } + await RemoveTooltip(); } await base.DisposeAsync(disposing);