diff --git a/src/BootstrapBlazor/Components/Table/Table.razor b/src/BootstrapBlazor/Components/Table/Table.razor index 68d49284251..4e590920016 100644 --- a/src/BootstrapBlazor/Components/Table/Table.razor +++ b/src/BootstrapBlazor/Components/Table/Table.razor @@ -869,7 +869,7 @@ RenderFragment RenderExtendButtons => item => @
- +
@if (BeforeRowButtonTemplate != null) { @@ -897,13 +897,13 @@ @RowButtonTemplate.Invoke(item) } - +
; RenderFragment RenderRowExtendButtons => item => @
-
+
@{ var isInCell = InCellMode && SelectedRows.FirstOrDefault() == item; } diff --git a/src/BootstrapBlazor/Components/Table/Table.razor.cs b/src/BootstrapBlazor/Components/Table/Table.razor.cs index c635fdf3332..b2aa9472161 100644 --- a/src/BootstrapBlazor/Components/Table/Table.razor.cs +++ b/src/BootstrapBlazor/Components/Table/Table.razor.cs @@ -47,6 +47,12 @@ public partial class Table : ITable, IModelEqualityComparer where [Parameter] public int DefaultFixedColumnWidth { get; set; } = 200; + /// + /// 获得/设置 是否使用按钮组显示行内扩展按钮 默认 true + /// + [Parameter] + public bool IsGroupExtendButtons { get; set; } = true; + /// /// 获得/设置 内置虚拟化组件实例 /// @@ -153,6 +159,11 @@ public partial class Table : ITable, IModelEqualityComparer where .AddClass(ExtendButtonColumnAlignment.ToDescriptionString()) .Build(); + private string? ExtendButtonGroupClassString => CssBuilder.Default() + .AddClass("btn-group", IsGroupExtendButtons) + .AddClass("btn-separate", !IsGroupExtendButtons) + .Build(); + private string GetSortTooltip(ITableColumn col) => SortName != col.GetFieldName() ? UnsetText : SortOrder switch diff --git a/src/BootstrapBlazor/Components/Table/Table.razor.scss b/src/BootstrapBlazor/Components/Table/Table.razor.scss index 551cc54c38f..39d18772efc 100644 --- a/src/BootstrapBlazor/Components/Table/Table.razor.scss +++ b/src/BootstrapBlazor/Components/Table/Table.razor.scss @@ -968,3 +968,7 @@ form .table .table-cell > textarea { .bb-sortable tr { cursor: pointer; } + +.btn-separate > button:not(:last-child) { + margin-inline-end: .25rem; +} diff --git a/test/UnitTest/Components/TableTest.cs b/test/UnitTest/Components/TableTest.cs index b5ae1406052..675276046f8 100644 --- a/test/UnitTest/Components/TableTest.cs +++ b/test/UnitTest/Components/TableTest.cs @@ -2026,6 +2026,17 @@ public void RowButtonTemplate_Ok() }); }); }); + + cut.Contains("
"); + + var table = cut.FindComponent>(); + Assert.NotNull(table); + + table.SetParametersAndRender(pb => + { + pb.Add(a => a.IsGroupExtendButtons, false); + }); + cut.Contains("
"); } [Fact]