The reason for the slow performance is the use of an ObservableCollection to hold the dynamic columns and the large number of collection change notifications.
Using a RadObservableCollection with its AddRange method or suspending notifications resolves the performance issue.
We've gone ahead and updated the Binding Columns From ViewModel demo from the SDK Examples Browser to demonstrate how this collection can be used in this scenario.
Regards,
Dilyan Traykov
Progress Telerik
Virtual Classroom, the free self-paced technical training that gets you up to speed with Telerik and Kendo UI products quickly just got a fresh new look + new and improved content including a brand new Blazor course! Check it out at https://learn.telerik.com/.