Skip to content

Commit 7c4b5c6

Browse files
committed
2 parents 2d99ee9 + 940c31e commit 7c4b5c6

File tree

7 files changed

+18
-15
lines changed

7 files changed

+18
-15
lines changed

src/BootstrapBlazor/BootstrapBlazor.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk.Razor">
22

33
<PropertyGroup>
4-
<Version>9.11.2-beta04</Version>
4+
<Version>9.11.2-beta07</Version>
55
</PropertyGroup>
66

77
<ItemGroup>

src/BootstrapBlazor/Components/Table/Table.razor

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@
107107
<span class="caret"></span>
108108
</button>
109109
<div class="dropdown-menu dropdown-menu-end shadow">
110-
@foreach (var item in VisibleColumns)
110+
@foreach (var item in _visibleColumns)
111111
{
112112
<div class="dropdown-item">
113113
<Checkbox ShowAfterLabel="true" DisplayText="@item.DisplayName" IsDisabled="@GetColumnsListState(item)"

src/BootstrapBlazor/Components/Table/Table.razor.Toolbar.cs

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -466,7 +466,7 @@ public Func<TItem, bool>? ShowDeleteButtonCallback
466466
/// <summary>
467467
/// 获得/设置 各列是否显示状态集合
468468
/// </summary>
469-
private List<ColumnVisibleItem> VisibleColumns { get; } = [];
469+
private readonly List<ColumnVisibleItem> _visibleColumns = [];
470470

471471
/// <summary>
472472
/// 获得当前可见列集合
@@ -475,11 +475,15 @@ public Func<TItem, bool>? ShowDeleteButtonCallback
475475
public IEnumerable<ITableColumn> GetVisibleColumns()
476476
{
477477
// 不可见列
478-
var items = VisibleColumns.Where(i => i.Visible);
479-
return Columns.Where(i => !i.GetIgnore() && items.Any(v => v.Name == i.GetFieldName()) && ScreenSize >= i.ShownWithBreakPoint);
478+
var items = _visibleColumns.Where(i => i.Visible).Select(a => a.Name).ToHashSet();
479+
return Columns.Where(i => !i.GetIgnore() && items.Contains(i.GetFieldName()) && ScreenSize >= i.ShownWithBreakPoint);
480480
}
481481

482-
private bool GetColumnsListState(ColumnVisibleItem item) => VisibleColumns.Find(i => i.Name == item.Name) is { Visible: true } && VisibleColumns.Where(i => i.Visible).DistinctBy(i => i.Name).Count(i => i.Visible) == 1;
482+
private bool GetColumnsListState(ColumnVisibleItem item)
483+
{
484+
var items = _visibleColumns.Where(i => i.Visible).Select(a => a.Name).Distinct().ToHashSet();
485+
return items.Contains(item.Name) && items.Count == 1;
486+
}
483487

484488
private bool ShowAddForm { get; set; }
485489

src/BootstrapBlazor/Components/Table/Table.razor.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1276,8 +1276,8 @@ private void InternalResetVisibleColumns(List<ITableColumn> columns, IEnumerable
12761276
}
12771277
}
12781278
}
1279-
VisibleColumns.Clear();
1280-
VisibleColumns.AddRange(cols);
1279+
_visibleColumns.Clear();
1280+
_visibleColumns.AddRange(cols);
12811281
}
12821282

12831283
/// <summary>

src/BootstrapBlazor/Components/Table/Table.razor.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -747,7 +747,7 @@ const autoFitColumnWidth = async (table, col) => {
747747
const span = th.querySelector('.table-cell');
748748
const thStyle = getComputedStyle(th);
749749
const margin = parseFloat(thStyle.getPropertyValue('padding-left')) + parseFloat(thStyle.getPropertyValue('padding-right'))
750-
maxWidth = Math.max(maxWidth, calcCellWidth(span)) + margin;
750+
maxWidth = Math.max(maxWidth, calcCellWidth(span) + margin);
751751
}
752752

753753
if (table.options.autoFitColumnWidthCallback !== null) {

src/BootstrapBlazor/wwwroot/modules/upload.js

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -93,12 +93,10 @@ export function preview(previewerId, index) {
9393
export function getPreviewUrl(id, fileName) {
9494
let url = '';
9595
const upload = Data.get(id);
96-
const { files } = upload;
97-
if (files) {
98-
const file = [...files].find(v => v.name === fileName);
99-
if (file) {
100-
url = URL.createObjectURL(file);
101-
}
96+
const { files, inputFile } = upload;
97+
const file = [...(files || inputFile.files)].find(v => v.name === fileName);
98+
if (file) {
99+
url = URL.createObjectURL(file);
102100
}
103101
return url;
104102
}

test/UnitTest/Components/TableTest.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8383,6 +8383,7 @@ public async Task OnAutoFitColumnWidthCallback_Ok()
83838383
pb.Add(a => a.AllowDragColumn, true);
83848384
pb.Add(a => a.ClientTableName, "table-unit-test");
83858385
pb.Add(a => a.OnQueryAsync, OnQueryAsync(localizer));
8386+
pb.Add(a => a.FitColumnWidthIncludeHeader, true);
83868387
pb.Add(a => a.OnAutoFitColumnWidthCallback, (fieldName, calcWidth) =>
83878388
{
83888389
name = fieldName;

0 commit comments

Comments
 (0)