Articles in this section
Category / Section

What are all the optimization settings to increase the performance in WinForms GridGroupingControl?

1 min read

Performance

The GridGroupingControl performance increased when large number of data used by the following methods.

C#

this.girdGroupingControl1.InvalidateAllWhenListChanged = false;
this.girdGroupingControl1.AllowedOptimizations = EngineOptimizations.All;
this.girdGroupingControl1.CounterLogic = EngineCounters.YAmount;
this.gridGroupingControl1.UseDefaultsForFasterDrawing = true; // GDI interop drawing, FirstNRecords Summaries used to increase painting performance
this.gridGroupingControl1.TableOptions.ColumnsMaxLengthStrategy = GridColumnsMaxLengthStrategy.FirstNRecords;
this.gridGroupingControl1.TableOptions.ColumnsMaxLengthFirstNRecords = 100;

 

VB

Me.girdGroupingControl1.InvalidateAllWhenListChanged = False
Me.girdGroupingControl1.AllowedOptimizations = EngineOptimizations.All
Me.girdGroupingControl1.CounterLogic = EngineCounters.YAmount
Me.gridGroupingControl1.UseDefaultsForFasterDrawing = True ' GDI interop drawing, FirstNRecords Summaries used to increase painting performance
Me.gridGroupingControl1.TableOptions.ColumnsMaxLengthStrategy = GridColumnsMaxLengthStrategy.FirstNRecords
Me.gridGroupingControl1.TableOptions.ColumnsMaxLengthFirstNRecords = 100

 

Here are some suggestions for the memory foot print.

The performance of loading the data can improve by making the child table of the Grid to load on demand. It avoids the performance delay by loading the data of the child only when it is expanded or needed. 
The property UseLazyUniformChildListRelation must set to true to make the child table load on demand.

C#

this.gridGroupingControl1.UseLazyUniformChildListRelation = true;

 

VB

Me.gridGroupingControl1.UseLazyUniformChildListRelation = True

 

To solve the memory footprint issue, avoid all the values to be cache. To achieve this set the CacheRecordValues as false.

C#

this.gridGroupingControl1.Engine.CacheRecordValues = false;

 

VB

Me.gridGroupingControl1.Engine.CacheRecordValues = False

To support for groups and filtered records for large data sources, reduce the memory footprint by disabling the counters where the application is not needed.

C#

this.gridGroupingControl1.Engine.CounterLogic = EngineCounters.YAmount;

 

VB

Me.gridGroupingControl1.Engine.CounterLogic = EngineCounters.YAmount

To reduce the auto size calculation for the column to some rows, where the performance can be increased. It can be done by providing the FirstNRecords to the ColumnsMaxLengthStrategy and specifying the number of records in ColumnMaxLengthFirstNRecords.

 

C#

this.gridGroupingControl1.TableOptions.ColumnsMaxLengthStrategy = GridColumnsMaxLengthStrategy.FirstNRecords;
this.gridGroupingControl1.TableOptions.ColumnsMaxLengthFirstNRecords = 50;//the number of records you want checked.

 

VB

Me.gridGroupingControl1.TableOptions.ColumnsMaxLengthStrategy = GridColumnsMaxLengthStrategy.FirstNRecords
Me.gridGroupingControl1.TableOptions.ColumnsMaxLengthFirstNRecords = 50 'the number of records you want checked.

Reference link: https://help.syncfusion.com/windowsforms/classic/gridgroupingcontrol/performance

Did you find this information helpful?
Yes
No
Help us improve this page
Please provide feedback or comments
Comments (0)
Please sign in to leave a comment
Access denied
Access denied