@page "/Admin/AspNetUsers/AspNetUsersList" @inject Blazored.SessionStorage.ISessionStorageService sessionStorage @inherits ListBase @using Syncfusion.Blazor.Grids; @using Syncfusion.Blazor.Buttons; @using Syncfusion.Blazor.Spinner; @using BlazorApp.Helper @using BWPMModels; @using BlazorApp.Controller;

AspNetUsers

@**@
@code{ SfGrid Grid { get; set; } public List GridData { get; set; } public List AspNetUserss { get; set; } string userid = ""; public static int? pkey { get; set; } public bool Initial { get; set; } = true; public bool ContinuePaging = true; public bool InitialRender { get; set; } public string Value = ""; // consider that value your querystring contains public int foundrow = 0; protected override void OnInitialized() { /// GridData = OrdersDetails.GetAllRecords(); GridData = BlazorApp.Controller.AspNetUsersController.GetAllData(); } protected override async Task OnAfterRenderAsync(bool firstRender) { userid = await sessionStorage.GetItemAsync("UserID"); if (userid == null) { var authState = await authenticationStateTask; var userId = authState.User.Claims.FirstOrDefault().Value; var user = authState.User; if (user.Identity.IsAuthenticated) { await sessionStorage.SetItemAsync("UserID", userId); } else { await sessionStorage.SetItemAsync("UserID", userId); } } } private async Task OnBeginHandler(ActionEventArgs Args) { if (Args.RequestType == Syncfusion.Blazor.Grids.Action.Save) { if (Args.Action == "Add") { //Args.Data.Id = BlazorApp.Controller.AspNetUsersController.InsertData(Args.Data); //Value = Args.Data.ID; } else { BlazorApp.Controller.AspNetUsersController.PUT(Args.Data); } } } public async Task OnCompletedHandler(ActionEventArgs Args) { if (Args.RequestType == Syncfusion.Blazor.Grids.Action.Save) { await Grid.SetRowData(Args.Data.Id, Args.Data); double xx = 0; Value = Args.Data.Id; xx = await DataHandler(); await Grid.SelectRow(xx); } } public async void RowDataBoundHandler(BeforeDataBoundArgs args) { if (!Initial) { //await Task.Delay(100); //var Idx = await this.Grid.GetRowIndexByPrimaryKey(Convert.ToDouble(Value)); //get index value //this.Grid.SelectRow(Convert.ToDouble(Idx)); } Initial = false; } public async Task DataHandler() { var PageCount = (GridData.Count / Grid.PageSettings.PageSize) + 1; ContinuePaging = true; var CurrentPage = 1; Grid.Refresh(); await Grid.GoToPage(1); for (int i = 1; i <= PageCount; i++) { List Rows = await Grid.GetCurrentViewRecords(); // returns the current view data for (int j = 0; j < Grid.PageSettings.PageSize; j++) { if (j < Rows.Count && Rows[j].Id == Value) { foundrow = j; ContinuePaging = false; // prevent the default navigation break; } } if (ContinuePaging) { if (i >= PageCount) { i = 0; } await Grid.GoToPage(i + 1); } else { return foundrow; } } return foundrow; } }