Updates to children count reverted on collection change

3 posts, 0 answers
  1. Greg
    Greg avatar
    7 posts
    Member since:
    Sep 2010

    Posted 21 Dec 2010 Link to this post

    I have a number of children property on each of my items in the TreeGridList, this list is currently an ObservableCollection. 

    If I have the children expanded in the grid, and then transition the number of children on the parent to 0 through the grid, the collection changed notification coming from the ObservableCollection causes the grid to try to revert the change that is under way (changing the number of children to 0).  I am not sure how to resolve this (keep the 0 child count).

    I have a very simple sample project but am not sure how to attach it.  (I pasted the view item below).

    reproduction steps - launch application, change child count on an item to 3, expand item, change child count to 0 (notice that the number of children remains 3).

    Thanks for your help..

    > WpfApplication1.exe!WpfApplication1.ViewItem.NumberOfChildren.set(int value = 5) Line 63 C#
      [External Code]
      Telerik.Windows.Data.dll!Telerik.Windows.Data.ItemPropertyInfoExtensions.SetValue(System.ComponentModel.ItemPropertyInfo itemProperty = {System.ComponentModel.ItemPropertyInfo}, object item = {WpfApplication1.ViewItem}, object value = 5) Line 89 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.ReturnOldValuesToRow(Telerik.Windows.Controls.GridViewColumnCollection columns = Count = 3, System.Collections.Generic.Dictionary<string,object> oldValues = Count = 3, object dataItem = {WpfApplication1.ViewItem}) Line 1011 + 0xbc bytes C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelRowEdit(Telerik.Windows.Controls.GridView.GridViewRow gridViewRow = {Telerik.Windows.Controls.TreeListView.TreeListViewRow}) Line 980 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelEdit(Telerik.Windows.Controls.GridViewEditingUnit editingUnit = Row) Line 972 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelEdit() Line 963 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.ItemsSourceChanged(bool sourceChanged = false) Line 3084 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.OnItemsChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 7965 + 0xa bytes C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.BaseItemsControl.OnItemCollectionChanged(object sender = {Telerik.Windows.Data.DataItemCollection}, System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 686 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 639 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender = {Telerik.Windows.Data.HierarchicalCollectionView}, System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 914 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender = {Telerik.Windows.Data.HierarchicalCollectionView}, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 32 + 0x42 bytes C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 642 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOverride() Line 790 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshInternal() Line 737 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOrDefer() Line 732 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.ProcessSynchronousCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1009 + 0x9 bytes C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 952 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.HierarchicalCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 267 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.HierarchicalChildCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 189 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnSourceCollectionChanged(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1308 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1292 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 32 + 0x42 bytes C#
      [External Code]
      WpfApplication1.exe!WpfApplication1.ViewItem.NumberOfChildren.set(int value = 0) Line 65 + 0x15 bytes C#
    WpfApplication1.exe!WpfApplication1.ViewItem.NumberOfChildren.set(int value = 5) Line 63 C#
      [External Code]
      Telerik.Windows.Data.dll!Telerik.Windows.Data.ItemPropertyInfoExtensions.SetValue(System.ComponentModel.ItemPropertyInfo itemProperty = {System.ComponentModel.ItemPropertyInfo}, object item = {WpfApplication1.ViewItem}, object value = 5) Line 89 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.ReturnOldValuesToRow(Telerik.Windows.Controls.GridViewColumnCollection columns = Count = 3, System.Collections.Generic.Dictionary<string,object> oldValues = Count = 3, object dataItem = {WpfApplication1.ViewItem}) Line 1011 + 0xbc bytes C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelRowEdit(Telerik.Windows.Controls.GridView.GridViewRow gridViewRow = {Telerik.Windows.Controls.TreeListView.TreeListViewRow}) Line 980 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelEdit(Telerik.Windows.Controls.GridViewEditingUnit editingUnit = Row) Line 972 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelEdit() Line 963 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.ItemsSourceChanged(bool sourceChanged = false) Line 3084 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.OnItemsChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 7965 + 0xa bytes C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.BaseItemsControl.OnItemCollectionChanged(object sender = {Telerik.Windows.Data.DataItemCollection}, System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 686 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 639 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender = {Telerik.Windows.Data.HierarchicalCollectionView}, System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 914 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender = {Telerik.Windows.Data.HierarchicalCollectionView}, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 32 + 0x42 bytes C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 642 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOverride() Line 790 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshInternal() Line 737 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOrDefer() Line 732 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.ProcessSynchronousCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1009 + 0x9 bytes C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 952 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.HierarchicalCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 267 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.HierarchicalChildCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 189 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnSourceCollectionChanged(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1308 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1292 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 32 + 0x42 bytes C#
      [External Code]
      WpfApplication1.exe!WpfApplication1.ViewItem.NumberOfChildren.set(int value = 0) Line 65 + 0x15 bytes C#
    > WpfApplication1.exe!WpfApplication1.ViewItem.NumberOfChildren.set(int value = 5) Line 63 C#
      [External Code]
      Telerik.Windows.Data.dll!Telerik.Windows.Data.ItemPropertyInfoExtensions.SetValue(System.ComponentModel.ItemPropertyInfo itemProperty = {System.ComponentModel.ItemPropertyInfo}, object item = {WpfApplication1.ViewItem}, object value = 5) Line 89 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.ReturnOldValuesToRow(Telerik.Windows.Controls.GridViewColumnCollection columns = Count = 3, System.Collections.Generic.Dictionary<string,object> oldValues = Count = 3, object dataItem = {WpfApplication1.ViewItem}) Line 1011 + 0xbc bytes C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelRowEdit(Telerik.Windows.Controls.GridView.GridViewRow gridViewRow = {Telerik.Windows.Controls.TreeListView.TreeListViewRow}) Line 980 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelEdit(Telerik.Windows.Controls.GridViewEditingUnit editingUnit = Row) Line 972 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelEdit() Line 963 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.ItemsSourceChanged(bool sourceChanged = false) Line 3084 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.OnItemsChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 7965 + 0xa bytes C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.BaseItemsControl.OnItemCollectionChanged(object sender = {Telerik.Windows.Data.DataItemCollection}, System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 686 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 639 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender = {Telerik.Windows.Data.HierarchicalCollectionView}, System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 914 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender = {Telerik.Windows.Data.HierarchicalCollectionView}, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 32 + 0x42 bytes C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 642 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOverride() Line 790 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshInternal() Line 737 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOrDefer() Line 732 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.ProcessSynchronousCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1009 + 0x9 bytes C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 952 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.HierarchicalCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 267 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.HierarchicalChildCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 189 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnSourceCollectionChanged(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1308 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1292 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 32 + 0x42 bytes C#
      [External Code]
      WpfApplication1.exe!WpfApplication1.ViewItem.NumberOfChildren.set(int value = 0) Line 65 + 0x15 bytes C#
    public class ViewItem
        {
            private static int NameID = 0;
            public ViewItem()
            {
                this.Name = "ObjectName" + NameID++;
                this.Children = new ObservableCollection<ViewItem>();
            }

            public ObservableCollection<ViewItem> Children
            {
                get;
                set;
            }

            public string Name { getset; }

            public int NumberOfChildren
            {
                get
                {
                    return this.Children.Count;
                }
                set
                {
                    if (value == 0)
                    {
                        this.Children.Clear();
                    }
                    else
                    {
                        for (int i = this.Children.Count; i < value; i++)
                        {
                            this.Children.Add(new ViewItem());
                        }
                    }
                }
            }
        }

    > WpfApplication1.exe!WpfApplication1.ViewItem.NumberOfChildren.set(int value = 5) Line 63 C#
      [External Code]
      Telerik.Windows.Data.dll!Telerik.Windows.Data.ItemPropertyInfoExtensions.SetValue(System.ComponentModel.ItemPropertyInfo itemProperty = {System.ComponentModel.ItemPropertyInfo}, object item = {WpfApplication1.ViewItem}, object value = 5) Line 89 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.ReturnOldValuesToRow(Telerik.Windows.Controls.GridViewColumnCollection columns = Count = 3, System.Collections.Generic.Dictionary<string,object> oldValues = Count = 3, object dataItem = {WpfApplication1.ViewItem}) Line 1011 + 0xbc bytes C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelRowEdit(Telerik.Windows.Controls.GridView.GridViewRow gridViewRow = {Telerik.Windows.Controls.TreeListView.TreeListViewRow}) Line 980 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelEdit(Telerik.Windows.Controls.GridViewEditingUnit editingUnit = Row) Line 972 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelEdit() Line 963 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.ItemsSourceChanged(bool sourceChanged = false) Line 3084 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.OnItemsChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 7965 + 0xa bytes C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.BaseItemsControl.OnItemCollectionChanged(object sender = {Telerik.Windows.Data.DataItemCollection}, System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 686 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 639 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender = {Telerik.Windows.Data.HierarchicalCollectionView}, System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 914 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender = {Telerik.Windows.Data.HierarchicalCollectionView}, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 32 + 0x42 bytes C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 642 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOverride() Line 790 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshInternal() Line 737 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOrDefer() Line 732 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.ProcessSynchronousCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1009 + 0x9 bytes C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 952 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.HierarchicalCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 267 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.HierarchicalChildCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 189 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnSourceCollectionChanged(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1308 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1292 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 32 + 0x42 bytes C#
      [External Code]
      WpfApplication1.exe!WpfApplication1.ViewItem.NumberOfChildren.set(int value = 0) Line 65 + 0x15 bytes C
    > WpfApplication1.exe!WpfApplication1.ViewItem.NumberOfChildren.set(int value = 5) Line 63 C#
      [External Code]
      Telerik.Windows.Data.dll!Telerik.Windows.Data.ItemPropertyInfoExtensions.SetValue(System.ComponentModel.ItemPropertyInfo itemProperty = {System.ComponentModel.ItemPropertyInfo}, object item = {WpfApplication1.ViewItem}, object value = 5) Line 89 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.ReturnOldValuesToRow(Telerik.Windows.Controls.GridViewColumnCollection columns = Count = 3, System.Collections.Generic.Dictionary<string,object> oldValues = Count = 3, object dataItem = {WpfApplication1.ViewItem}) Line 1011 + 0xbc bytes C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelRowEdit(Telerik.Windows.Controls.GridView.GridViewRow gridViewRow = {Telerik.Windows.Controls.TreeListView.TreeListViewRow}) Line 980 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelEdit(Telerik.Windows.Controls.GridViewEditingUnit editingUnit = Row) Line 972 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelEdit() Line 963 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.ItemsSourceChanged(bool sourceChanged = false) Line 3084 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.OnItemsChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 7965 + 0xa bytes C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.BaseItemsControl.OnItemCollectionChanged(object sender = {Telerik.Windows.Data.DataItemCollection}, System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 686 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 639 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender = {Telerik.Windows.Data.HierarchicalCollectionView}, System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 914 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender = {Telerik.Windows.Data.HierarchicalCollectionView}, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 32 + 0x42 bytes C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 642 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOverride() Line 790 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshInternal() Line 737 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOrDefer() Line 732 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.ProcessSynchronousCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1009 + 0x9 bytes C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 952 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.HierarchicalCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 267 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.HierarchicalChildCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 189 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnSourceCollectionChanged(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1308 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1292 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 32 + 0x42 bytes C#
      [External Code]
      WpfApplication1.exe!WpfApplication1.ViewItem.NumberOfChildren.set(int value = 0) Line 65 + 0x15 bytes C
    WpfApplication1.exe!WpfApplication1.ViewItem.NumberOfChildren.set(int value = 5) Line 63 C#
      [External Code]
      Telerik.Windows.Data.dll!Telerik.Windows.Data.ItemPropertyInfoExtensions.SetValue(System.ComponentModel.ItemPropertyInfo itemProperty = {System.ComponentModel.ItemPropertyInfo}, object item = {WpfApplication1.ViewItem}, object value = 5) Line 89 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.ReturnOldValuesToRow(Telerik.Windows.Controls.GridViewColumnCollection columns = Count = 3, System.Collections.Generic.Dictionary<string,object> oldValues = Count = 3, object dataItem = {WpfApplication1.ViewItem}) Line 1011 + 0xbc bytes C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelRowEdit(Telerik.Windows.Controls.GridView.GridViewRow gridViewRow = {Telerik.Windows.Controls.TreeListView.TreeListViewRow}) Line 980 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelEdit(Telerik.Windows.Controls.GridViewEditingUnit editingUnit = Row) Line 972 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.CancelEdit() Line 963 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.ItemsSourceChanged(bool sourceChanged = false) Line 3084 C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.GridViewDataControl.OnItemsChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 7965 + 0xa bytes C#
      Telerik.Windows.Controls.GridView.dll!Telerik.Windows.Controls.GridView.BaseItemsControl.OnItemCollectionChanged(object sender = {Telerik.Windows.Data.DataItemCollection}, System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 686 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 639 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.DataItemCollection.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender = {Telerik.Windows.Data.HierarchicalCollectionView}, System.Collections.Specialized.NotifyCollectionChangedEventArgs e = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 914 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender = {Telerik.Windows.Data.HierarchicalCollectionView}, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 32 + 0x42 bytes C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 642 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOverride() Line 790 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshInternal() Line 737 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.RefreshOrDefer() Line 732 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.ProcessSynchronousCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1009 + 0x9 bytes C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 952 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.HierarchicalCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 267 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.HierarchicalChildCollectionView.ProcessCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 189 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.OnSourceCollectionChanged(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1308 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.QueryableCollectionView.Telerik.Windows.Data.IWeakEventListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.ReceiveWeakEvent(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 1292 C#
      Telerik.Windows.Data.dll!Telerik.Windows.Data.WeakEvent.WeakListener<System.Collections.Specialized.NotifyCollectionChangedEventArgs>.Handler(object sender = Count = 0, System.Collections.Specialized.NotifyCollectionChangedEventArgs args = {System.Collections.Specialized.NotifyCollectionChangedEventArgs}) Line 32 + 0x42 bytes C#
      [External Code]
      WpfApplication1.exe!WpfApplication1.ViewItem.NumberOfChildren.set(int value = 0) Line 65 + 0x15 bytes C
  2. Vlad
    Admin
    Vlad avatar
    11100 posts

    Posted 22 Dec 2010 Link to this post

    Hello Greg,

     You can open support ticket and send us the project. 

    Best wishes,
    Vlad
    the Telerik team
    Browse the videos here>> to help you get started with RadControls for WPF
  3. UI for WPF is Visual Studio 2017 Ready
  4. Greg
    Greg avatar
    7 posts
    Member since:
    Sep 2010

    Posted 22 Dec 2010 Link to this post

    Thanks,

    My ticket number is 378702 and includes a project and call stack.

    Greg
Back to Top