RadiantQ WPF Gantt
Virtualized Chart Rendering
Previous Topic  Next Topic 

Virtualized Chart Rendering


Virtualization in the context of gantt is rendering only those elements that are currently visible in the vertical scroll view with the view of being able to support 1000s of rows at no additional performance cost.


Gantt uses 2 views to render the tasks / resources - the grid or table view and the chart view. The table view is virtualized by default. Whereas the chart view's virtualization is off by default.


Without turning on Virtualization in the chart region, the gantt would typically begin to slow down when there are more than 2000 rows to render. But, with virtualization turned on, you will see much improved performance for any number of rows (but note that with the GanttControl, building the gantt's internal model could slow down as the number of task items goes up, this is not the case with FlexyGantt though).


You can turn on virtualization in the gantt chart region as follows:


<gantt:GanttControl UseChartVirtualization="true" ...../>


There is however a drawback in turning virtualization on with regards to rendering dependency lines. Since only the visible rows are rendered, if a dependency line's start or end task is not visible then the line will only be partly rendered and if both the start and end tasks are not visible, then the dependency line will not be rendered at all.


Here is an example:


Fully rendered dependency line when UseChartVirtualization = false

Partly rendered dependency line because Task 28 is not rendered when UseChartVirtualization = true




� RadiantQ 2009 - 2019. All Rights Reserved.