Home › Forums › WPF controls › Xceed DataGrid for WPF › Does xceed grid handles updates in async manner?
Tagged: duplicate key, grid, hashcode
-
AuthorPosts
-
#50527 |
hi..
at times we get an exception from Xceed Grid:
we suspect there might a concurrency issues, but there could other causes, that for example our class does not implement GetHashCode… so does anyone know or encountered such a problem?
we do have a lock on the code block that actually adds and removes objects from the list,
with the same key has already been added.
> at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
> at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
> at Xceed.Wpf.DataGrid.CustomItemContainerGenerator.CreateGroupListFromCollection(IList collection, GeneratorNode parentNode)
> at Xceed.Wpf.DataGrid.CustomItemContainerGenerator.HandleSameLevelGroupAddition(GeneratorNode firstChild, Int32& countAdded, NotifyCollectionChangedEventArgs e)
> at Xceed.Wpf.DataGrid.CustomItemContainerGenerator.OnGroupsChanged(Object sender, NotifyCollectionChangedEventArgs e)
> at Xceed.Wpf.DataGrid.CustomItemContainerGenerator.OnReceiveWeakEvent(Type managerType, Object sender, EventArgs e)
> at Xceed.Wpf.DataGrid.CustomItemContainerGenerator.System.Windows.IWeakEventListener.ReceiveWeakEvent(Type managerType, Object sender, EventArgs e)
> at System.Windows.WeakEventManager.ListenerList.DeliverEvent(Listener& listener, Object sender, EventArgs args, Type managerType)
> at System.Windows.WeakEventManager.ListenerList`1.DeliverEvent(Object sender, EventArgs e, Type managerType)
> at System.Windows.WeakEventManager.DeliverEvent(Object sender, EventArgs args)
> at System.Collections.Specialized.CollectionChangedEventManager.OnCollectionChanged(Object sender, NotifyCollectionChangedEventArgs args)
> at System.Collections.ObjectModel.ReadOnlyObservableCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs args)
> at System.Collections.ObjectModel.ReadOnlyObservableCollection`1.HandleCollectionChanged(Object sender, NotifyCollectionChangedEventArgs e)
> at System.Collections.Specialized.NotifyCollectionChangedEventHandler.Invoke(Object sender, NotifyCollectionChangedEventArgs e)
> at System.Collections.ObjectModel.ObservableCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
> at System.Collections.ObjectModel.ObservableCollection`1.InsertItem(Int32 index, T item)
> at System.Collections.ObjectModel.Collection`1.Insert(Int32 index, T item)
> at Xceed.Wpf.DataGrid.DataGridCollectionViewGroup.InsertGroup(Int32 index, DataGridCollectionViewGroup group)
> at Xceed.Wpf.DataGrid.DataGridCollectionViewGroup.CreateSubGroup(Object groupName, Int32 level, ObservableCollection1 groupByList, List
1 groupSortComparers)
> at Xceed.Wpf.DataGrid.DataGridCollectionViewGroup.GetGroup(RawItem rawItem, Int32 level, CultureInfo culture, ObservableCollection1 groupByList, List
1 groupSortComparers)
> at Xceed.Wpf.DataGrid.DataGridCollectionView.GetRawItemNewGroup(RawItem rawItem)
> at Xceed.Wpf.DataGrid.DataGridCollectionView.AddRawItemInGroup(RawItem rawItem)
> at Xceed.Wpf.DataGrid.DataGridCollectionView.AddSourceItem(Int32 startIndex, IList items, Int32 newSourceItemCount)
> at Xceed.Wpf.DataGrid.DataGridCollectionView.ExecuteSourceItemOperation(DeferredOperation deferredOperation, Boolean& refreshForced)
> at Xceed.Wpf.DataGrid.DataGridCollectionViewBase.ExecuteOrQueueSourceItemOperation(DeferredOperation deferredOperation)
> at Xceed.Wpf.DataGrid.DataGridCollectionViewBase.OnItemsSourceCollectionChanged(Object sender, NotifyCollectionChangedEventArgs e)
> at Xceed.Wpf.DataGrid.DataGridCollectionViewBase.OnReceiveWeakEvent(Type managerType, Object sender, EventArgs e)
> at Xceed.Wpf.DataGrid.DataGridCollectionViewBase.System.Windows.IWeakEventListener.ReceiveWeakEvent(Type managerType, Object sender, EventArgs e)
> at System.Windows.WeakEventManager.ListenerList.DeliverEvent(Listener& listener, Object sender, EventArgs args, Type managerType)
> at System.Windows.WeakEventManager.ListenerList`1.DeliverEvent(Object sender, EventArgs e, Type managerType)
> at System.Windows.WeakEventManager.DeliverEvent(Object sender, EventArgs args)
> at System.Collections.Specialized.CollectionChangedEventManager.OnCollectionChanged(Object sender, NotifyCollectionChangedEventArgs args)
> at System.Collections.ObjectModel.ObservableCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
> at System.Collections.ObjectModel.ObservableCollection`1.InsertItem(Int32 index, T item)
> at System.Collections.ObjectModel.Collection`1.Add(T item)Hi Maayan,
We first need to check if this issue has been already fixed.
We suggest that you test you project with a trial of the current version of the Xceed DataGrid for WPF – Version 6.6. To download the trial version, please use the following link :
If the issue is still there with the current version, we would need small stand-alone project that reproduces the issue to help us investigate further. Please send it to support@xceed.com and include a link to this forum thread for reference. Thank you.
Evance Kafando
Xceed Software Inc. -
AuthorPosts
- You must be logged in to reply to this topic.