Power Apps Modern Data Grid Just Got Serious About Big Data: Pagination, Row Virtualization & Delegation
Contents
Introduction
If you have ever built a canvas app on top of a large SharePoint list, you know the pain: a gallery that stutters, a table that only shows the first 500 or 2,000 rows, and a search box that quietly returns incomplete results.
The Modern Data Grid control in canvas apps is now addressing exactly this. In this post I break down what is new, how the two pagination modes differ, and where delegation still needs your attention.
Why the Modern Data Grid matters
The Data Grid is a Fluent UI based control that shows records in a column-and-row layout with sortable columns, optional search and selectable rows. Microsoft positions it as the recommended control for tabular data in canvas apps instead of the older Table control, with better performance for data-dense screens.
The headline for large datasets: it supports row virtualization, so scrolling stays smooth even above 2,000 records.
What is new
Pagination with two modes: Auto and Number
Row virtualization for smooth scrolling through large lists
Delegation support for server-side sorting and search
New properties such as PageSize, ItemsCount, AllItemsLoaded and CurrentPage
The difference is easiest to see against a SharePoint list with 10,000+ rows, so that is the scenario this post focuses on.
Pagination mode 1: Auto (row virtualization)
Set Pagination = Auto and the grid behaves much like a gallery. Rows are loaded efficiently as the user scrolls, and only what is needed is rendered.
Best for: browse-and-scroll experiences, dashboards, list views where users do not need to jump to a specific page.
Pagination mode 2: Number (explicit pages)
Set Pagination = Number and the grid shows native paging controls: First, Previous, Next and Last. You can control PageSize, and even let users change it from a dropdown.
Best for: admin screens, audit views, and any scenario where users think in pages (“go to page 12”).
Use CurrentPage, ItemsCount and AllItemsLoaded to build custom labels such as “Page 3 of 40” or to show a loading hint.
Delegation: sorting and search
This is where large-data apps usually break, so read carefully.
Sorting can happen server-side, so users sort the full list, not just the loaded rows.
Native grid search has limitations. Microsoft notes that search may not be delegable on every data source, and a delegation warning might not appear. For big sources, always verify the results.
For SharePoint, use a DelegateSearch approach together with StartsWith, which is a delegable pattern, to search the whole list instead of only the first chunk.
Rule of thumb: if your search needs to find any row in a 10,000-item list, test it with an item you know sits far beyond row 2,000.
[Screenshot placeholder: search test on an item deep in the list]
Gotchas to remember
Text wrapping disables row virtualization. Keep wrapping off on columns if you want smooth scrolling on large sets.
No zebra striping and no variable row height. All rows share one height.
Check the control’s release status in the official docs before using it in a business-critical app. Documentation has described parts of it as preview, so test on a non-critical screen first.
Delegation depends on the data source. SharePoint, Dataverse and SQL do not behave identically.
My take
For SharePoint-backed canvas apps, this is one of the most practical upgrades in a while. It reduces the need for custom pagination collections and clunky gallery workarounds. Still, delegation is not magic: test with real data volumes, not a 50-row dev list.
Try it yourself
Create a SharePoint list with 5,000+ items.
Add a Modern Data Grid to a canvas app and connect the list.
Compare Auto vs Number pagination.
Test search with an item near the end of the list.
Have you tried the new Data Grid on a large list yet? Share what you found in the comments.
About the author
Arnove Khatua
A, Khatua (27/10/2026) (4) Power Apps Modern Data Grid Just Got Serious About Big Data: Pagination, Row Virtualization & Delegation | LinkedIn