This question is locked. New answers and comments are not allowed.
Steps to reproduce:
TeamPulse Version: 2010.3.1117.0
OS: Windows 7
Browser: IE 8
.Net: 4.0
Silverlight: 4.0.50917.0
- View Requirements --> View Stories
- Group the stories by a field (e.g. maturity)
- Open a story by clicking the icon to the left of the story
TeamPulse Version: 2010.3.1117.0
OS: Windows 7
Browser: IE 8
.Net: 4.0
Silverlight: 4.0.50917.0
Stack trace:
Exception Type: System.InvalidOperationException
Exception Message: Cannot change ObservableCollection during a CollectionChanged or PropertyChanged event.
at System.Collections.ObjectModel.ObservableCollection`1.CheckReentrancy()
at System.Collections.ObjectModel.ObservableCollection`1.RemoveItem(Int32 index)
at System.Collections.ObjectModel.Collection`1.Remove(T item)
at Telerik.Windows.Data.QueryableCollectionViewGroup.FindAndRemove(Object simpleItem)
at Telerik.Windows.Data.QueryableCollectionViewGroup.FindAndRemove(Object simpleItem)
at Telerik.Windows.Data.QueryableCollectionViewGroup.EqualizeItems(IEnumerable items, IEnumerable`1 groupDescriptors, ItemAction action, Object item)
at Telerik.Windows.Data.QueryableCollectionViewGroupRoot.EqualizeItems(IEnumerable items, IEnumerable`1 groupDescriptors, ItemAction action, Object item)
at Telerik.Windows.Data.QueryableCollectionView.RefreshOnItemAction(Object item, ItemAction action)
at Telerik.Windows.Data.QueryableCollectionView.CommitEdit()
at TeamPulse.Client.Presentation.Stories.StoriesListViewBase.NotifyGridOfOutsideEditsForFilteringUpdate(Story editedStory)
at TeamPulse.Client.Presentation.Stories.StoriesListPresenterModelBase`1.NotifyGridOfOutsideEditsForFilteringUpdate(Story editedStory)
at TeamPulse.Client.Presentation.Stories.StoriesListPresenterModelBase`1.Story_GlobalPropertyChanged(Object sender, PropertyChangedEventArgs e)
at TeamPulse.Client.DataService.Story.Domain_PropertyChanged(Object sender, PropertyChangedEventArgs e)
at System.ComponentModel.PropertyChangedEventHandler.Invoke(Object sender, PropertyChangedEventArgs e)
at TeamPulse.Client.DataService.DomainBase.OnPropertyChanged(String prop)
at TeamPulse.Client.DataService.WorkItemBase.OnPropertyChanged(String prop)
at TeamPulse.Client.Presentation.Stories.StoriesListViewBase.OnRowUnloaded(Object sender, RowUnloadedEventArgs e)
at Telerik.Windows.Controls.GridView.GridViewDataControl.OnRowUnloaded(RowUnloadedEventArgs e)
at Telerik.Windows.Controls.GridView.GridViewDataControl.ClearContainerForItemOverride(DependencyObject element, Object item)
at Telerik.Windows.Controls.GridView.BaseItemsControl.Telerik.Windows.Controls.GridView.IGeneratorHost.ClearContainerForItem(DependencyObject container, Object item)
at Telerik.Windows.Controls.GridView.GridViewItemContainerGenerator.System.Windows.Controls.Primitives.IItemContainerGenerator.RemoveAll()
at Telerik.Windows.Controls.GridView.GridViewItemContainerGenerator.OnRefresh()
at Telerik.Windows.Controls.GridView.GridViewItemContainerGenerator.OnCollectionChanged(Object sender, NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Controls.GridView.GridViewItemContainerGenerator.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(Object sender, NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Data.WeakEvent.WeakListener`1.Handler(Object sender, TArgs args)
at System.Collections.Specialized.NotifyCollectionChangedEventHandler.Invoke(Object sender, NotifyCollectionChangedEventArgs e)
at Telerik.Windows.Data.DataItemCollection.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
at Telerik.Windows.Data.DataItemCollection.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(Object sender, NotifyCollectionChangedEventArgs e)
at Telerik.Windows.Data.WeakEvent.WeakListener`1.Handler(Object sender, TArgs args)
at Telerik.Windows.Data.QueryableCollectionView.OnCollectionChanged(NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Data.QueryableCollectionView.ProcessSynchronousCollectionChangedWithAdjustedArgs(NotifyCollectionChangedEventArgs originalArguments, Int32 adjustedOldIndex, Int32 adjustedNewIndex)
at Telerik.Windows.Data.QueryableCollectionView.ProcessSynchronousCollectionChanged(NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Data.QueryableCollectionView.ProcessCollectionChanged(NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Data.QueryableCollectionView.OnSourceCollectionChanged(Object sender, NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Data.QueryableCollectionView.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(Object sender, NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Data.WeakEvent.WeakListener`1.Handler(Object sender, TArgs args)
at System.Collections.ObjectModel.ReadOnlyObservableCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs args)
at System.Collections.ObjectModel.ReadOnlyObservableCollection`1.HandleCollectionChanged(Object sender, NotifyCollectionChangedEventArgs e)
at System.Collections.ObjectModel.ObservableCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
at System.Collections.ObjectModel.ObservableCollection`1.RemoveItem(Int32 index)
at System.Collections.ObjectModel.Collection`1.Remove(T item)
at Telerik.Windows.Data.QueryableCollectionViewGroup.FindAndRemove(Object simpleItem)
at Telerik.Windows.Data.QueryableCollectionViewGroup.FindAndRemove(Object simpleItem)
at Telerik.Windows.Data.QueryableCollectionViewGroup.EqualizeItems(IEnumerable items, IEnumerable`1 groupDescriptors, ItemAction action, Object item)
at Telerik.Windows.Data.QueryableCollectionViewGroupRoot.EqualizeItems(IEnumerable items, IEnumerable`1 groupDescriptors, ItemAction action, Object item)
at Telerik.Windows.Data.QueryableCollectionView.RefreshOnItemAction(Object item, ItemAction action)
at Telerik.Windows.Data.QueryableCollectionView.CommitEdit()
at TeamPulse.Client.Presentation.Stories.StoriesListViewBase.NotifyGridOfOutsideEditsForFilteringUpdate(Story editedStory)
at TeamPulse.Client.Presentation.Stories.StoriesListPresenterModelBase`1.NotifyGridOfOutsideEditsForFilteringUpdate(Story editedStory)
at TeamPulse.Client.Presentation.Stories.StoriesListPresenterModelBase`1.Story_GlobalPropertyChanged(Object sender, PropertyChangedEventArgs e)
at TeamPulse.Client.DataService.Story.Domain_PropertyChanged(Object sender, PropertyChangedEventArgs e)
at System.ComponentModel.PropertyChangedEventHandler.Invoke(Object sender, PropertyChangedEventArgs e)
at TeamPulse.Client.DataService.DomainBase.OnPropertyChanged(String prop)
at TeamPulse.Client.DataService.WorkItemBase.OnPropertyChanged(String prop)
at TeamPulse.Client.DataService.Story.set_Tasks(RadObservableCollection`1 value)
at TeamPulse.Client.Managers.ProjectManager.<>c__DisplayClass181.<>c__DisplayClass183.<GetStoryTasks>b__17e()
Exception Type: System.InvalidOperationException
Exception Message: Cannot change ObservableCollection during a CollectionChanged or PropertyChanged event.
at System.Collections.ObjectModel.ObservableCollection`1.CheckReentrancy()
at System.Collections.ObjectModel.ObservableCollection`1.RemoveItem(Int32 index)
at System.Collections.ObjectModel.Collection`1.Remove(T item)
at Telerik.Windows.Data.QueryableCollectionViewGroup.FindAndRemove(Object simpleItem)
at Telerik.Windows.Data.QueryableCollectionViewGroup.FindAndRemove(Object simpleItem)
at Telerik.Windows.Data.QueryableCollectionViewGroup.EqualizeItems(IEnumerable items, IEnumerable`1 groupDescriptors, ItemAction action, Object item)
at Telerik.Windows.Data.QueryableCollectionViewGroupRoot.EqualizeItems(IEnumerable items, IEnumerable`1 groupDescriptors, ItemAction action, Object item)
at Telerik.Windows.Data.QueryableCollectionView.RefreshOnItemAction(Object item, ItemAction action)
at Telerik.Windows.Data.QueryableCollectionView.CommitEdit()
at TeamPulse.Client.Presentation.Stories.StoriesListViewBase.NotifyGridOfOutsideEditsForFilteringUpdate(Story editedStory)
at TeamPulse.Client.Presentation.Stories.StoriesListPresenterModelBase`1.NotifyGridOfOutsideEditsForFilteringUpdate(Story editedStory)
at TeamPulse.Client.Presentation.Stories.StoriesListPresenterModelBase`1.Story_GlobalPropertyChanged(Object sender, PropertyChangedEventArgs e)
at TeamPulse.Client.DataService.Story.Domain_PropertyChanged(Object sender, PropertyChangedEventArgs e)
at System.ComponentModel.PropertyChangedEventHandler.Invoke(Object sender, PropertyChangedEventArgs e)
at TeamPulse.Client.DataService.DomainBase.OnPropertyChanged(String prop)
at TeamPulse.Client.DataService.WorkItemBase.OnPropertyChanged(String prop)
at TeamPulse.Client.Presentation.Stories.StoriesListViewBase.OnRowUnloaded(Object sender, RowUnloadedEventArgs e)
at Telerik.Windows.Controls.GridView.GridViewDataControl.OnRowUnloaded(RowUnloadedEventArgs e)
at Telerik.Windows.Controls.GridView.GridViewDataControl.ClearContainerForItemOverride(DependencyObject element, Object item)
at Telerik.Windows.Controls.GridView.BaseItemsControl.Telerik.Windows.Controls.GridView.IGeneratorHost.ClearContainerForItem(DependencyObject container, Object item)
at Telerik.Windows.Controls.GridView.GridViewItemContainerGenerator.System.Windows.Controls.Primitives.IItemContainerGenerator.RemoveAll()
at Telerik.Windows.Controls.GridView.GridViewItemContainerGenerator.OnRefresh()
at Telerik.Windows.Controls.GridView.GridViewItemContainerGenerator.OnCollectionChanged(Object sender, NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Controls.GridView.GridViewItemContainerGenerator.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(Object sender, NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Data.WeakEvent.WeakListener`1.Handler(Object sender, TArgs args)
at System.Collections.Specialized.NotifyCollectionChangedEventHandler.Invoke(Object sender, NotifyCollectionChangedEventArgs e)
at Telerik.Windows.Data.DataItemCollection.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
at Telerik.Windows.Data.DataItemCollection.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(Object sender, NotifyCollectionChangedEventArgs e)
at Telerik.Windows.Data.WeakEvent.WeakListener`1.Handler(Object sender, TArgs args)
at Telerik.Windows.Data.QueryableCollectionView.OnCollectionChanged(NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Data.QueryableCollectionView.ProcessSynchronousCollectionChangedWithAdjustedArgs(NotifyCollectionChangedEventArgs originalArguments, Int32 adjustedOldIndex, Int32 adjustedNewIndex)
at Telerik.Windows.Data.QueryableCollectionView.ProcessSynchronousCollectionChanged(NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Data.QueryableCollectionView.ProcessCollectionChanged(NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Data.QueryableCollectionView.OnSourceCollectionChanged(Object sender, NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Data.QueryableCollectionView.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(Object sender, NotifyCollectionChangedEventArgs args)
at Telerik.Windows.Data.WeakEvent.WeakListener`1.Handler(Object sender, TArgs args)
at System.Collections.ObjectModel.ReadOnlyObservableCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs args)
at System.Collections.ObjectModel.ReadOnlyObservableCollection`1.HandleCollectionChanged(Object sender, NotifyCollectionChangedEventArgs e)
at System.Collections.ObjectModel.ObservableCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
at System.Collections.ObjectModel.ObservableCollection`1.RemoveItem(Int32 index)
at System.Collections.ObjectModel.Collection`1.Remove(T item)
at Telerik.Windows.Data.QueryableCollectionViewGroup.FindAndRemove(Object simpleItem)
at Telerik.Windows.Data.QueryableCollectionViewGroup.FindAndRemove(Object simpleItem)
at Telerik.Windows.Data.QueryableCollectionViewGroup.EqualizeItems(IEnumerable items, IEnumerable`1 groupDescriptors, ItemAction action, Object item)
at Telerik.Windows.Data.QueryableCollectionViewGroupRoot.EqualizeItems(IEnumerable items, IEnumerable`1 groupDescriptors, ItemAction action, Object item)
at Telerik.Windows.Data.QueryableCollectionView.RefreshOnItemAction(Object item, ItemAction action)
at Telerik.Windows.Data.QueryableCollectionView.CommitEdit()
at TeamPulse.Client.Presentation.Stories.StoriesListViewBase.NotifyGridOfOutsideEditsForFilteringUpdate(Story editedStory)
at TeamPulse.Client.Presentation.Stories.StoriesListPresenterModelBase`1.NotifyGridOfOutsideEditsForFilteringUpdate(Story editedStory)
at TeamPulse.Client.Presentation.Stories.StoriesListPresenterModelBase`1.Story_GlobalPropertyChanged(Object sender, PropertyChangedEventArgs e)
at TeamPulse.Client.DataService.Story.Domain_PropertyChanged(Object sender, PropertyChangedEventArgs e)
at System.ComponentModel.PropertyChangedEventHandler.Invoke(Object sender, PropertyChangedEventArgs e)
at TeamPulse.Client.DataService.DomainBase.OnPropertyChanged(String prop)
at TeamPulse.Client.DataService.WorkItemBase.OnPropertyChanged(String prop)
at TeamPulse.Client.DataService.Story.set_Tasks(RadObservableCollection`1 value)
at TeamPulse.Client.Managers.ProjectManager.<>c__DisplayClass181.<>c__DisplayClass183.<GetStoryTasks>b__17e()