Skip to content

Commit 78f0cb1

Browse files
author
Raj Kumar Sri Ramulu
committed
Updated the Grid to apply the new page number if available
1 parent 865be16 commit 78f0cb1

File tree

3 files changed

+7
-13
lines changed

3 files changed

+7
-13
lines changed

blazorbootstrap/Components/Grid/Grid.razor.cs

+4
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,10 @@ internal async Task RefreshDataAsync(bool firstRender = false, CancellationToken
187187
{
188188
items = result.Data!.ToList();
189189
totalCount = result.TotalCount ?? result.Data!.Count();
190+
if (result.PageNumber.HasValue)
191+
{
192+
gridCurrentState = new GridState<TItem>(result.PageNumber.Value, gridCurrentState.Sorting);
193+
}
190194
}
191195
else
192196
{

blazorbootstrap/Models/GridDataProviderRequest.cs

+1-3
Original file line numberDiff line numberDiff line change
@@ -63,20 +63,18 @@ public GridDataProviderResult<TItem> ApplyTo(IEnumerable<TItem> data)
6363
// apply paging
6464
var totalCount = resultData!.Count(); // before paging
6565
int? newPageNumber = null;
66-
bool updatePageNumber = false;
6766
if (PageNumber > 0 && PageSize > 0 && totalCount > 0)
6867
{
6968
int skip = (PageNumber - 1) * PageSize;
7069
if (totalCount <= skip)
7170
{
72-
updatePageNumber = true;
7371
newPageNumber = (totalCount / PageSize) + (totalCount % PageSize == 0 ? 0 : 1);
7472
skip = (newPageNumber.Value - 1) * PageSize;
7573
}
7674
resultData = resultData!.Skip(skip).Take(PageSize);
7775
}
7876

79-
return new GridDataProviderResult<TItem> { Data = resultData, TotalCount = totalCount, UpdatePageNumber = updatePageNumber, PageNumber = newPageNumber };
77+
return new GridDataProviderResult<TItem> { Data = resultData, TotalCount = totalCount, PageNumber = newPageNumber };
8078
}
8179

8280
#endregion

blazorbootstrap/Models/GridDataProviderResult.cs

+2-10
Original file line numberDiff line numberDiff line change
@@ -21,20 +21,12 @@ public class GridDataProviderResult<TItem>
2121
public int? TotalCount { get; init; }
2222

2323
/// <summary>
24-
/// Updates the page number of the grid if set to true.
25-
/// </summary>
26-
/// <remarks>
27-
/// Default value is false.
28-
/// </remarks>
29-
public bool UpdatePageNumber {get;set;}=false;
30-
31-
/// <summary>
32-
/// Updates the page number of the grid.
24+
/// Updates the page number of the grid, if not null.
3325
/// </summary>
3426
/// <remarks>
3527
/// Default value is null.
3628
/// </remarks>
37-
public int? PageNumber {get;init;}
29+
public int? PageNumber { get; init; }
3830

3931
#endregion
4032
}

0 commit comments

Comments
 (0)