I just got a question concerning the Microsofts PresentationFramework´s DataGrid
:
I have an ObservableCollection<TestModel>
. TestModel
is a simple class with 20 Int properties... nothing more. In my test there are 50 Entries in my ObservableCollection
.
So overall I got 1000 cells (20*50). All of these cells are displayed at once, so there really is no virtualization possible.
This is my Grid:
<DataGrid AutoGenerateColumns="true" RowHeight="20" ItemsSource="{Binding DataGridModelSource}"/>
In my opinion 1000 cells to render is not very much... though it takes, depending on the system I am running this test on, about 1 to 3 seconds to render these 1000 cells. That´s quite a lot, isn't it?
I did the same test with some custom DataGrids
like the one from C1, Infragistics, Mindscape or DX and the time to render these 1000 cells is reduced to about 100ms with all of these Grids.
So what is the point with the Microsoft DataGrid
? Is there some way to improve the performance? Am I missing something?