private async void MyDataPager_OnDemandLoading(object sender, OnDemandLoadingEventArgs e) { int itemsCount = ViewModel.GetItemsCount(); int count = itemsCount / MyDataPager.PageSize; int tail = itemsCount % MyDataPager.PageSize; MyDataPager.PageCount = count + (tail > 0 ? 1 : 0); int pageNumber = e.StartIndex / MyDataPager.PageSize + 1; List <dynamic> list = await ViewModel.GetItemsAsync(pageNumber, MyDataPager.PageSize); if (list.Count == 0) { return; } MyDataPager.LoadDynamicItems(0, list); (MyDataPager.PagedSource as PagedCollectionView).ResetCache(); }
private void ViewModel_FilterChanged() { MyDataPager_OnDemandLoading(MyDataPager, new OnDemandLoadingEventArgs()); MyDataPager.MoveToPage(0); }