anagram4wander / VirtualizingObservableCollection

.NET PCL With Virtualizing Observable Collection
http://alphachitech.wordpress.com/2015/01/31/virtualizing-observable-collection/
56 stars 28 forks source link

DataGridAsyncDemo - deadlock while sorting #6

Open pluskal opened 9 years ago

pluskal commented 9 years ago

I have done some random scrolling, waited until items are loaded. Is normal that items had not been ordered by ID but some items with lower id had appeared as well.

After that I have tried to order by clicking on the first column header, but app have deadlocked.

Intellitrace and mem dump: https://mega.co.nz/#!4B5klbgY!Yn4-JNfWILGvM4t0OhF7aD258ehWPYQ-AA-TcYKxu6E https://mega.co.nz/#!hQQwRRrb!zSYses0E6LEEZ9yC3Ay7BO8iufgpxFhEhKauT6zuqSg

pluskal commented 9 years ago

It seems that when I have added - ScrollViewer.IsDeferredScrollingEnabled="True" the problem had disappeared. I`m sure that the original issue with emitting null item that caused deadlock in the first place could still occur.

<DataGrid x:Name="TstDataGridAsyncFilterSort" Grid.Row="1" CanUserSortColumns="True" ItemsSource="{Binding MyDataVirtualizedAsyncFilterSort, ElementName=TheMainWindow}" Sorting="TstDataGridAsyncFilterSort_Sorting" ScrollViewer.IsDeferredScrollingEnabled="True"