The following rendering modes are available in the UI component:
Renders all columns at once.
Renders only those columns that get into the viewport.
The following scrolling modes are available:
A user scrolls a single page only. Scrolling is available only if all the page's rows do not fit into the UI component's height. In this mode, the pager performs the main navigation and scrolling is auxiliary. If paging is disabled, the UI component loads all rows simultaneously which can reduce the UI component's performance. In this case, we recommend that you use another scrolling mode.
Rows are loaded when they get into the viewport and removed once they leave it. In this mode, users can move to any page instantly.
If the rows take time to be loaded and rendered, they display gray boxes. Rendering optimization can reduce rendering time and remove the gray boxes. Alternatively, you can disable the scrolling.renderAsync property, but this can impact performance.
Each next page is loaded once the scrollbar reaches the end of its scale. In this mode, users scroll data gradually from the first to the last page. Row selection in infinite and virtual scroll mode with Shift+Click does not work in the following cases:
NOTESet the grouping.allowCollapsing property to false when using infinite scrolling in conjunction with grouping.
- Deferred selection is enabled.
- Rows grouping is enabled.
- The allowSelectAll property is set to false.
Note that the rowRenderingMode property value is "virtual" and cannot be changed if you set the mode property to "virtual" or "infinite".
Regardless of the scrolling mode, you can use the paging.pageSize property to specify the number of rows on a page.
Specifies whether the UI component should load adjacent pages. Applies only if scrolling.mode is "virtual" or "infinite".
Specifies whether to render rows after a user stops scrolling or at the same time as the user scrolls the DataGrid.
This property can have one of the following values:
Rows are rendered after a user stops scrolling.
In this mode, row content may take time to appear, but scrolling is smoother.
Rows are rendered at the same time as the user scrolls the DataGrid.
In this mode, row content is displayed quicker, but the component performance during scrolling may be lowered.
|undefined||The mode is defined automatically based on the row content.|
Unlike the mode property, which defines when to load data for rows, this property defines when to render them. The following rendering modes are available:
Renders all the loaded rows at once.
Renders only those rows that get into the viewport. Use this mode if the pageSize is large. Rows that are being currently rendered can be shown as gray boxes. If you do not want them to appear, disable the scrolling.renderAsync property, but this can impact performance.
Note that the rowRenderingMode property value is "virtual" and cannot be changed if you set the scrolling.mode property to "virtual" or "infinite".
Specifies whether a user can scroll the content with a swipe gesture. Applies only if useNative is false.
Specifies whether a user can scroll the content with the scrollbar. Applies only if useNative is false.
Specifies when to show scrollbars. Applies only if useNative is false.
The scrollbars help to scroll the content vertically and horizontally. Vertical scrolling is available when all the rows do not fit in the UI component's height. Horizontal scrolling is available when all the columns do not fit in the UI component's width, which can happen when columns have fixed widths or the columnAutoWidth property is set to true.