From 9c0fa12dcb2630cd492cda0f456171b48aa814c4 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Fri, 13 Feb 2026 09:28:32 +0800 Subject: [PATCH 1/6] feat(SelectTable): add TableToolbarTemplate parameter --- .../Components/Select/SelectTable.razor | 1 + .../Components/Select/SelectTable.razor.cs | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/src/BootstrapBlazor/Components/Select/SelectTable.razor b/src/BootstrapBlazor/Components/Select/SelectTable.razor index 2030f8ac355..cc4827ea046 100644 --- a/src/BootstrapBlazor/Components/Select/SelectTable.razor +++ b/src/BootstrapBlazor/Components/Select/SelectTable.razor @@ -80,6 +80,7 @@ IsPagination="IsPagination" PageItemsSource="PageItemsSource" ShowGotoNavigator="false" MaxPageLinkCount="3" OnClickRowCallback="OnClickRowCallback" OnQueryAsync="OnQueryAsync" IsMultipleSelect="IsMultipleSelect" @bind-SelectedRows="SelectedItems" + TableToolbarBeforeTemplate="TableToolbarBeforeTemplate" TableToolbarTemplate="TableToolbarTemplate" ShowEmpty="ShowEmpty" EmptyTemplate="EmptyTemplate"> diff --git a/src/BootstrapBlazor/Components/Select/SelectTable.razor.cs b/src/BootstrapBlazor/Components/Select/SelectTable.razor.cs index fbe44f5b508..14cd7f5b304 100644 --- a/src/BootstrapBlazor/Components/Select/SelectTable.razor.cs +++ b/src/BootstrapBlazor/Components/Select/SelectTable.razor.cs @@ -139,6 +139,24 @@ namespace BootstrapBlazor.Components; [Parameter] public string? MultiSelectedItemMaxWidth { get; set; } + /// + /// 获得/设置 表格 Toolbar 按钮模板 + /// Gets or sets Table Toolbar Button Template + /// 表格工具栏左侧按钮模板,模板中内容出现在默认按钮前面 + /// Table toolbar left button template, content appears before default buttons + /// + [Parameter] + public RenderFragment? TableToolbarBeforeTemplate { get; set; } + + /// + /// 获得/设置 表格 Toolbar 按钮模板 + /// Gets or sets Table Toolbar Button Template + /// 表格工具栏左侧按钮模板,模板中内容出现在默认按钮后面 + /// Table toolbar left button template, content appears after default buttons + /// + [Parameter] + public RenderFragment? TableToolbarTemplate { get; set; } + /// /// 获得/设置 IIconTheme 服务实例 /// Gets or sets IIconTheme Service Instance From d2da1ea54e3ab009bb7c1c0565fa34084b86e808 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Fri, 13 Feb 2026 09:29:00 +0800 Subject: [PATCH 2/6] chore: bump version 10.3.2 --- src/BootstrapBlazor/BootstrapBlazor.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/BootstrapBlazor/BootstrapBlazor.csproj b/src/BootstrapBlazor/BootstrapBlazor.csproj index a86d4f15136..f16614e9a0d 100644 --- a/src/BootstrapBlazor/BootstrapBlazor.csproj +++ b/src/BootstrapBlazor/BootstrapBlazor.csproj @@ -1,7 +1,7 @@  - 10.3.2-beta04 + 10.3.2 From 412edce18737e9ca08b9aeafe9374aa42af47adc Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Fri, 13 Feb 2026 09:32:15 +0800 Subject: [PATCH 3/6] =?UTF-8?q?refactor:=20=E6=9B=B4=E6=AD=A3=E5=8D=95?= =?UTF-8?q?=E8=AF=8D=E6=8B=BC=E5=86=99=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/BootstrapBlazor/Components/Select/SelectTable.razor.cs | 6 +++--- src/BootstrapBlazor/Components/Select/SelectTable.razor.js | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/BootstrapBlazor/Components/Select/SelectTable.razor.cs b/src/BootstrapBlazor/Components/Select/SelectTable.razor.cs index 14cd7f5b304..3e98d3e86c7 100644 --- a/src/BootstrapBlazor/Components/Select/SelectTable.razor.cs +++ b/src/BootstrapBlazor/Components/Select/SelectTable.razor.cs @@ -378,7 +378,7 @@ private async Task OnClickRowCallback(TItem item) private async Task OnClearValue() { SelectedItems.Clear(); - await TriggerUpdateSelecedItems(); + await TriggerUpdateSelectedItems(); if (OnClearAsync != null) { @@ -421,7 +421,7 @@ public async Task TriggerRemoveItem(int index) var item = SelectedItems[index]; SelectedItems.Remove(item); - await TriggerUpdateSelecedItems(); + await TriggerUpdateSelectedItems(); } } @@ -430,7 +430,7 @@ public async Task TriggerRemoveItem(int index) /// Update parameter method, called by Javascript /// [JSInvokable] - public async Task TriggerUpdateSelecedItems() + public async Task TriggerUpdateSelectedItems() { if (IsMultipleSelect) { diff --git a/src/BootstrapBlazor/Components/Select/SelectTable.razor.js b/src/BootstrapBlazor/Components/Select/SelectTable.razor.js index 9b96539d770..ea17546e99f 100644 --- a/src/BootstrapBlazor/Components/Select/SelectTable.razor.js +++ b/src/BootstrapBlazor/Components/Select/SelectTable.razor.js @@ -40,7 +40,7 @@ export function init(id, invoke) { } }, hideCallback: async () => { - await invoke.invokeMethodAsync("TriggerUpdateSelecedItems"); + await invoke.invokeMethodAsync("TriggerUpdateSelectedItems"); } }); From 219daf35d8fd2dabc2c41029133c9081f61323d2 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Fri, 13 Feb 2026 10:09:42 +0800 Subject: [PATCH 4/6] =?UTF-8?q?refactor:=20=E9=87=8D=E6=9E=84=20Toolbar=20?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E6=B3=A8=E9=87=8A=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Components/Table/Table.razor.Toolbar.cs | 52 ++++++++----------- 1 file changed, 22 insertions(+), 30 deletions(-) diff --git a/src/BootstrapBlazor/Components/Table/Table.razor.Toolbar.cs b/src/BootstrapBlazor/Components/Table/Table.razor.Toolbar.cs index 6e09c7d7431..d4eecba7597 100644 --- a/src/BootstrapBlazor/Components/Table/Table.razor.Toolbar.cs +++ b/src/BootstrapBlazor/Components/Table/Table.razor.Toolbar.cs @@ -9,20 +9,6 @@ namespace BootstrapBlazor.Components; public partial class Table { - /// - /// 获得/设置 是否显示工具栏 默认 false 不显示 - /// Gets or sets Whether to show toolbar. Default false - /// - [Parameter] - public bool ShowToolbar { get; set; } - - /// - /// 获得/设置 the 模板 of table toolbar. 默认为 null - /// Gets or sets the template of table toolbar. Default is null - /// - [Parameter] - public RenderFragment? ToolbarTemplate { get; set; } - /// /// 获得/设置 首次加载是否显示加载骨架屏 默认 false 不显示 使用 参数值 /// Gets or sets Whether to show skeleton when first loading. Default false. Use parameter value @@ -380,37 +366,43 @@ public Func? ShowDeleteButtonCallback public bool ShowToastAfterSaveOrDeleteModel { get; set; } = true; /// - /// 获得/设置 表格 Toolbar 按钮模板 - /// Gets or sets Table Toolbar Button Template - /// 表格工具栏左侧按钮模板,模板中内容出现在默认按钮前面 - /// Table toolbar left button template, content appears before default buttons + /// 获得/设置 是否显示工具栏 默认 false 不显示 + /// Gets or sets Whether to show toolbar. Default false + /// + [Parameter] + public bool ShowToolbar { get; set; } + + /// + /// 获得/设置 表格 Toolbar 工具栏模板 + /// Gets or sets the table toolbar right-side button template, content appears before the default buttons + /// + [Parameter] + public RenderFragment? ToolbarTemplate { get; set; } + + /// + /// 获得/设置 表格 Toolbar 工具栏左侧按钮模板,模板中内容出现在默认按钮前面 + /// Gets or sets the table toolbar left-side button template, content appears before the default buttons /// [Parameter] public RenderFragment? TableToolbarBeforeTemplate { get; set; } /// - /// 获得/设置 表格 Toolbar 按钮模板 - /// Gets or sets Table Toolbar Button Template - /// 表格工具栏左侧按钮模板,模板中内容出现在默认按钮后面 - /// Table toolbar left button template, content appears after default buttons + /// 获得/设置 表格 Toolbar 工具栏左侧按钮模板,模板中内容出现在默认按钮后面 + /// Gets or sets the table toolbar left-side button template, content appears after the default buttons /// [Parameter] public RenderFragment? TableToolbarTemplate { get; set; } /// - /// 获得/设置 表格 Toolbar 按钮模板 - /// Gets or sets Table Toolbar Button Template - /// 表格工具栏右侧按钮模板,模板中内容出现在默认按钮前面 - /// Table toolbar right button template, content appears before default buttons + /// 获得/设置 表格 Toolbar 工具栏右侧按钮模板,模板中内容出现在默认按钮前面 + /// Gets or sets the table toolbar right-side button template, content appears before the default buttons /// [Parameter] public RenderFragment? TableExtensionToolbarBeforeTemplate { get; set; } /// - /// 获得/设置 表格 Toolbar 按钮模板 - /// Gets or sets Table Toolbar Button Template - /// 表格工具栏右侧按钮模板,模板中内容出现在默认按钮后面 - /// Table toolbar right button template, content appears after default buttons + /// 获得/设置 表格 Toolbar 工具栏右侧按钮模板,模板中内容出现在默认按钮后面 + /// Gets or sets the table toolbar right-side button template, content appears after the default buttons /// [Parameter] public RenderFragment? TableExtensionToolbarTemplate { get; set; } From 758b4ddc20ea2c717603b1305e8f521561372d03 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Fri, 13 Feb 2026 10:25:06 +0800 Subject: [PATCH 5/6] =?UTF-8?q?doc:=20=E6=9B=B4=E6=96=B0=E6=B3=A8=E9=87=8A?= =?UTF-8?q?=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/BootstrapBlazor/Components/Table/Table.razor.Toolbar.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/BootstrapBlazor/Components/Table/Table.razor.Toolbar.cs b/src/BootstrapBlazor/Components/Table/Table.razor.Toolbar.cs index d4eecba7597..a2122087158 100644 --- a/src/BootstrapBlazor/Components/Table/Table.razor.Toolbar.cs +++ b/src/BootstrapBlazor/Components/Table/Table.razor.Toolbar.cs @@ -374,7 +374,7 @@ public Func? ShowDeleteButtonCallback /// /// 获得/设置 表格 Toolbar 工具栏模板 - /// Gets or sets the table toolbar right-side button template, content appears before the default buttons + /// Gets or sets the table toolbar template, content appears center of toolbar /// [Parameter] public RenderFragment? ToolbarTemplate { get; set; } From 638c498499982cc7c1ac6c9a3dcd8c75a8bd0f66 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Fri, 13 Feb 2026 10:25:19 +0800 Subject: [PATCH 6/6] =?UTF-8?q?revert:=20=E6=9B=B4=E6=96=B0=20Select=5FTab?= =?UTF-8?q?le=20=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Components/Select/SelectTable.razor | 1 - .../Components/Select/SelectTable.razor.cs | 18 ------------------ 2 files changed, 19 deletions(-) diff --git a/src/BootstrapBlazor/Components/Select/SelectTable.razor b/src/BootstrapBlazor/Components/Select/SelectTable.razor index cc4827ea046..2030f8ac355 100644 --- a/src/BootstrapBlazor/Components/Select/SelectTable.razor +++ b/src/BootstrapBlazor/Components/Select/SelectTable.razor @@ -80,7 +80,6 @@ IsPagination="IsPagination" PageItemsSource="PageItemsSource" ShowGotoNavigator="false" MaxPageLinkCount="3" OnClickRowCallback="OnClickRowCallback" OnQueryAsync="OnQueryAsync" IsMultipleSelect="IsMultipleSelect" @bind-SelectedRows="SelectedItems" - TableToolbarBeforeTemplate="TableToolbarBeforeTemplate" TableToolbarTemplate="TableToolbarTemplate" ShowEmpty="ShowEmpty" EmptyTemplate="EmptyTemplate"> diff --git a/src/BootstrapBlazor/Components/Select/SelectTable.razor.cs b/src/BootstrapBlazor/Components/Select/SelectTable.razor.cs index 3e98d3e86c7..f7f976dd469 100644 --- a/src/BootstrapBlazor/Components/Select/SelectTable.razor.cs +++ b/src/BootstrapBlazor/Components/Select/SelectTable.razor.cs @@ -139,24 +139,6 @@ namespace BootstrapBlazor.Components; [Parameter] public string? MultiSelectedItemMaxWidth { get; set; } - /// - /// 获得/设置 表格 Toolbar 按钮模板 - /// Gets or sets Table Toolbar Button Template - /// 表格工具栏左侧按钮模板,模板中内容出现在默认按钮前面 - /// Table toolbar left button template, content appears before default buttons - /// - [Parameter] - public RenderFragment? TableToolbarBeforeTemplate { get; set; } - - /// - /// 获得/设置 表格 Toolbar 按钮模板 - /// Gets or sets Table Toolbar Button Template - /// 表格工具栏左侧按钮模板,模板中内容出现在默认按钮后面 - /// Table toolbar left button template, content appears after default buttons - /// - [Parameter] - public RenderFragment? TableToolbarTemplate { get; set; } - /// /// 获得/设置 IIconTheme 服务实例 /// Gets or sets IIconTheme Service Instance