From fec54f192f37d62d601bea37cc7770966809c2fc Mon Sep 17 00:00:00 2001 From: Vincent Baaij Date: Fri, 30 Jan 2026 12:20:28 +0100 Subject: [PATCH 1/2] Fix issue #4340 for v5 by porting PR #4491 --- src/Core/Components/DataGrid/Columns/SelectColumn.cs | 8 ++++---- src/Core/Components/DataGrid/FluentDataGrid.razor.cs | 2 ++ 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/Core/Components/DataGrid/Columns/SelectColumn.cs b/src/Core/Components/DataGrid/Columns/SelectColumn.cs index 071b1ec417..f962fc6f6c 100644 --- a/src/Core/Components/DataGrid/Columns/SelectColumn.cs +++ b/src/Core/Components/DataGrid/Columns/SelectColumn.cs @@ -195,7 +195,7 @@ public DataGridSelectMode SelectMode /// Null is undefined. /// [Parameter] - public bool? SelectAll { get; set; } = false; + public bool? SelectAll { get; set; } /// /// Gets or sets the action to be executed when the [All] checkbox is clicked. @@ -394,7 +394,7 @@ private Icon GetIcon(bool? selected) { DataGridSelectMode.Single => IconSelectedSingle, DataGridSelectMode.SingleSticky => IconSelectedSingle, - _ => IconSelectedMultiple + _ => IconSelectedMultiple, }; } @@ -402,7 +402,7 @@ private Icon GetIcon(bool? selected) { DataGridSelectMode.Single => IconUnselectedSingle, DataGridSelectMode.SingleSticky => IconUnselectedSingle, - _ => IconUnselectedMultiple + _ => IconUnselectedMultiple, }; } @@ -543,7 +543,7 @@ private void RefreshHeaderContent() // Using SelectedItems only if (InternalGridContext != null && (Grid.Items != null || Grid.ItemsProvider != null)) { - if (_selectedItems.Count == 0) + if (_selectedItems.Count == 0 && !InternalGridContext.Items.Any(Property)) { return false; } diff --git a/src/Core/Components/DataGrid/FluentDataGrid.razor.cs b/src/Core/Components/DataGrid/FluentDataGrid.razor.cs index d650ae8d63..6c82e2b9cf 100644 --- a/src/Core/Components/DataGrid/FluentDataGrid.razor.cs +++ b/src/Core/Components/DataGrid/FluentDataGrid.razor.cs @@ -997,7 +997,9 @@ private string AriaSortValue(ColumnBase column) public override ValueTask DisposeAsync() { _currentPageItemsChanged.Dispose(); +#pragma warning disable MA0042 // Do not use blocking calls in an async method _scope?.Dispose(); +#pragma warning restore MA0042 // Do not use blocking calls in an async method return base.DisposeAsync(); } From d9bc1fb3abacd1c0ec556b1fd8338f21a5792e2a Mon Sep 17 00:00:00 2001 From: Vincent Baaij Date: Fri, 30 Jan 2026 12:27:18 +0100 Subject: [PATCH 2/2] Remove comment --- src/Core/Components/DataGrid/Columns/SelectColumn.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Core/Components/DataGrid/Columns/SelectColumn.cs b/src/Core/Components/DataGrid/Columns/SelectColumn.cs index f962fc6f6c..34ae31c891 100644 --- a/src/Core/Components/DataGrid/Columns/SelectColumn.cs +++ b/src/Core/Components/DataGrid/Columns/SelectColumn.cs @@ -540,7 +540,6 @@ private void RefreshHeaderContent() /// private bool? GetSelectAll() { - // Using SelectedItems only if (InternalGridContext != null && (Grid.Items != null || Grid.ItemsProvider != null)) { if (_selectedItems.Count == 0 && !InternalGridContext.Items.Any(Property))