Within my dategrid itemsource I have some properties that basically act as IValueConverters to lookup a string in a dictonary by using and int.
Public ReadOnly Property ReifenIdHintenBezeichnung As String
Get
If Fahrzeug.ReifenIdHinten.HasValue Then
Return _reifenDict(Fahrzeug.ReifenIdHinten.Value)
Else
Return String.Empty
End If
End Get
End Property
these columns are bound to a datatemplate that acts as cellTemplate for a combobox like this:
<DataTemplate><TextBlock Text="{Binding ReifenIdHintenBezeichnung }" /></DataTemplate>
(the whole idea to use a value converter with a dictonary was inspired by this https://feedback.telerik.com/wpf/1352336-slow-scrolling-when-a-gridviewcomboboxcolumn-is-bound-to-a-large-dataset) but as I need to create columns dynamically, I ended up with this property (and for the truely dynamic part properties with a parameter - but that's not the issue).
I noticed that the property is called everytime I scroll down one row for the following row. so one row is cached but not the row afterwards.
My question is if there is a way to use virtualization in such a way that say 20 rows and 10 columns are prefetched (async at best) to increase performance.
If you got any other suggestions on how to improve scolling performance with Comboboxes, i'm happy to read them. I already applied most tips mentioned here:https://docs.telerik.com/devtools/wpf/controls/radgridview/performance/tips-tricks
thanks for your help!
Jan