diff --git a/src/BootstrapBlazor.Shared/Samples/Table/TablesColumnResizing.razor b/src/BootstrapBlazor.Shared/Samples/Table/TablesColumnResizing.razor index 53486308361100ee1aab2804c6b53d8f269125a1..8b2cbce3b58880540f1825f9acb265db698e4747 100644 --- a/src/BootstrapBlazor.Shared/Samples/Table/TablesColumnResizing.razor +++ b/src/BootstrapBlazor.Shared/Samples/Table/TablesColumnResizing.razor @@ -49,7 +49,7 @@ IsPagination="true" PageItemsSource="@PageItemsSource" AllowResizing="true" IsStriped="true" IsBordered="true" RenderMode="TableRenderMode.Table" ShowToolbar="false" IsMultipleSelect="true" - OnQueryAsync="@OnQueryAsync"> + OnQueryAsync="@OnQueryAsync" OnResizeColumnAsync="OnResizeColumnAsync"> @@ -57,4 +57,6 @@ + + diff --git a/src/BootstrapBlazor.Shared/Samples/Table/TablesColumnResizing.razor.cs b/src/BootstrapBlazor.Shared/Samples/Table/TablesColumnResizing.razor.cs index 97e1fed9926157b6118548bd8a9864305a7c29fd..a9e7add4e7869f7835f795e37f929e3861f9b624 100644 --- a/src/BootstrapBlazor.Shared/Samples/Table/TablesColumnResizing.razor.cs +++ b/src/BootstrapBlazor.Shared/Samples/Table/TablesColumnResizing.razor.cs @@ -23,6 +23,9 @@ public partial class TablesColumnResizing 20 }; + [NotNull] + private ConsoleLogger? Logger { get; set; } + /// /// OnInitialized 方法 /// @@ -32,6 +35,12 @@ public partial class TablesColumnResizing Items = Foo.GenerateFoo(FooLocalizer); } + private Task OnResizeColumnAsync(string? columnName,float width) + { + Logger.Log($"Column: {columnName}"); + return Task.CompletedTask; + } + private Task> OnQueryAsync(QueryPageOptions options) { IEnumerable items = Items; diff --git a/src/BootstrapBlazor/Components/Table/Table.razor.js b/src/BootstrapBlazor/Components/Table/Table.razor.js index 977c1cf36b20932c930c90b915ca30159bbbcd23..0a9fac323219f8881b1446ba3e7ba3f743099b2e 100644 --- a/src/BootstrapBlazor/Components/Table/Table.razor.js +++ b/src/BootstrapBlazor/Components/Table/Table.razor.js @@ -266,7 +266,8 @@ const setResizeListener = table => { eff(col, false) if (table.callbacks.resizeColumnCallback) { const width = getWidth(col.parentNode); - table.invoke.invokeMethodAsync(table.callbacks.resizeColumnCallback, index, width) + let currentIndex = [...table.tables[0].querySelectorAll('thead > tr > th > span.col-resizer')].indexOf(col) + table.invoke.invokeMethodAsync(table.callbacks.resizeColumnCallback, currentIndex, width) } } ) @@ -361,6 +362,7 @@ const setDraggable = table => { EventHandler.on(col, 'dragstart', e => { col.parentNode.classList.add('table-dragging') col.classList.add('table-drag') + table.dragColumns = [...table.tables[0].querySelectorAll('thead > tr > th')].filter(i => i.draggable) index = table.dragColumns.indexOf(col) dragItem = col e.dataTransfer.effectAllowed = 'move'