diff --git a/src/BootstrapBlazor/BootstrapBlazor.csproj b/src/BootstrapBlazor/BootstrapBlazor.csproj index bf064a5c5bb..385ab956a28 100644 --- a/src/BootstrapBlazor/BootstrapBlazor.csproj +++ b/src/BootstrapBlazor/BootstrapBlazor.csproj @@ -1,7 +1,7 @@  - 9.11.2-beta02 + 9.11.2-beta03 diff --git a/src/BootstrapBlazor/Components/Table/Table.razor.cs b/src/BootstrapBlazor/Components/Table/Table.razor.cs index 276927983a0..fc5bf4058d8 100644 --- a/src/BootstrapBlazor/Components/Table/Table.razor.cs +++ b/src/BootstrapBlazor/Components/Table/Table.razor.cs @@ -1066,6 +1066,7 @@ private async Task OnTableRenderAsync(bool firstRender) { DragColumnCallback = nameof(DragColumnCallback), AutoFitColumnWidthCallback = OnAutoFitColumnWidthCallback == null ? null : nameof(AutoFitColumnWidthCallback), + FitColumnWidthIncludeHeader, ResizeColumnCallback = OnResizeColumnAsync != null ? nameof(ResizeColumnCallback) : null, ColumnMinWidth = ColumnMinWidth ?? Options.CurrentValue.TableSettings.ColumnMinWidth, ScrollWidth = ActualScrollWidth, @@ -1598,6 +1599,12 @@ private async Task OnContextMenu(MouseEventArgs e, TItem item) [Parameter] public Func>? OnAutoFitColumnWidthCallback { get; set; } + /// + /// 获得/设置 列宽自适应时是否包含表头 默认 false + /// + [Parameter] + public bool FitColumnWidthIncludeHeader { get; set; } + /// /// 列宽自适应方法 /// diff --git a/src/BootstrapBlazor/Components/Table/Table.razor.js b/src/BootstrapBlazor/Components/Table/Table.razor.js index ec7bad09e1b..22129192da1 100644 --- a/src/BootstrapBlazor/Components/Table/Table.razor.js +++ b/src/BootstrapBlazor/Components/Table/Table.razor.js @@ -742,6 +742,12 @@ const autoFitColumnWidth = async (table, col) => { maxWidth = Math.max(maxWidth, calcCellWidth(cell)); }); + if (table.options.fitColumnWidthIncludeHeader) { + const th = col.closest('th'); + const span = th.querySelector('.table-cell'); + maxWidth = Math.max(maxWidth, calcCellWidth(span)); + } + if (table.options.autoFitColumnWidthCallback !== null) { const widthValue = await table.invoke.invokeMethodAsync(table.options.autoFitColumnWidthCallback, field, maxWidth); if (widthValue > 0) {