Hello,
since we updated to 16.2.20162.2109 we got this exception when we fire a propertychanged of a property. It was working fine with 15.2.
I think a similiar post is https://www.infragistics.com/community/forums/t/91190.aspx which solved with an Update.
bei Infragistics.Windows.DataPresenter.CellCollection.GetItem(Int32 index) bei Infragistics.Windows.DataPresenter.CellCollection.get_Item(Field field) bei Infragistics.Windows.DataPresenter.CellValuePresenter.InitializeCellLevelSettings(DataRecord newRecord, DataRecord oldRecord, Field newField, Field oldField, Boolean isWithinRecord) bei Infragistics.Windows.DataPresenter.CellValuePresenter.InitializeField(Field newField, Field oldField) bei Infragistics.Windows.DataPresenter.CellValuePresenter.OnPropertyChanged(DependencyPropertyChangedEventArgs e) bei System.Windows.DependencyObject.NotifyPropertyChange(DependencyPropertyChangedEventArgs args) bei System.Windows.DependencyObject.UpdateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry& newEntry, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType) bei System.Windows.DependencyObject.SetValueCommon(DependencyProperty dp, Object value, PropertyMetadata metadata, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType, Boolean isInternal) bei System.Windows.DependencyObject.SetValue(DependencyProperty dp, Object value) bei Infragistics.Windows.DataPresenter.CellPlaceholder.CreateCachedElement(Boolean cacheInTemplateRecord) bei Infragistics.Windows.DataPresenter.CellPlaceholder.OnInitialized(EventArgs e) bei System.Windows.FrameworkElement.TryFireInitialized() bei Infragistics.Windows.DataPresenter.Internal.TemplateDataRecordCache.AddPlaceholder(Panel placeholderPanel, FieldItem field, Boolean isLabel) bei Infragistics.Windows.DataPresenter.Internal.TemplateDataRecordCache.InitializeCellPanel(Panel placeholderPanel, Boolean isLabelPanel) bei Infragistics.Windows.DataPresenter.Internal.TemplateDataRecordCache.InitializeCachedCellArea() bei Infragistics.Windows.DataPresenter.Internal.TemplateDataRecordCache.VerifyCache(Boolean suppressUpdateLayout) bei Infragistics.Windows.DataPresenter.VirtualizingDataRecordCellPanel.VerifyFieldLists() bei Infragistics.Windows.DataPresenter.VirtualizingDataRecordCellPanel.VerifyCellElements() bei Infragistics.Windows.DataPresenter.VirtualizingDataRecordCellPanel.GetCellElement(FieldItem field, Boolean verify) bei Infragistics.Windows.DataPresenter.VirtualizingDataRecordCellPanel.GetCellValuePresenter(Field field) bei Infragistics.Windows.DataPresenter.CellValuePresenter.FromRecordAndField(DataRecord record, Field field) bei Infragistics.Windows.DataPresenter.DataRecord.RefreshCellValue(Field field, Boolean raiseInitializeRecord, Boolean isRecordPresenterDeactivated) bei Infragistics.Windows.DataPresenter.RecordManager.ProcessChangeNotification(Object sender, Object eventArgs) bei Infragistics.Windows.DataPresenter.RecordManager.OnChangeNotification(Object sender, Object eventArgs, Boolean isReset, Boolean isCellChangeNotification) bei Infragistics.Windows.DataPresenter.DataRecord.System.Windows.IWeakEventListener.ReceiveWeakEvent(Type managerType, Object sender, EventArgs e)
Thank you for your post. I have been looking into it and I can suggest you try this with our latest service release for version 16.2 (16.2.20162.2141). You can download it by logging to our web site and going to Account \Keys & Downloads.
https://www.infragistics.com/my-account/keys-and-downloads/
If the issue is still reproducible could you please send us an isolated sample project, where this is reproduced, so we could be able to investigate this further for you.
Looking forward for your reply.
Hello Stefan,
Was there some fix here?
We use Infragistics 17.2.20172.1000 and have the same problem. Sometimes (we couldn't exactly point out what was different) when modifying bounded Data, Data is not shown in the Grid and firing a propertychanged gives an exception. Our grid has multiple Layouts and we do not use threads. Here is the StackTrace:
Index was outside of the array
at Infragistics.Collections.SparseArray.ValidateIndex(Int32 index) at Infragistics.Collections.SparseArray.GetItem(Int32 index, ICreateItemCallback createItemCallback) at Infragistics.Windows.DataPresenter.UnsortedRecordSparseArray.GetItem(Int32 index, Boolean create, Boolean calledFromSortedManagerSparseArray, Boolean& newRowCreated) at Infragistics.Windows.DataPresenter.UnsortedRecordSparseArray.GetItem(Int32 index, Boolean create) at Infragistics.Windows.DataPresenter.DataRecordCollection.get_Item(Int32 index) at Infragistics.Windows.DataPresenter.DataItemRecordMap.CheckMap(Object item, Func`1 getRecord) at Infragistics.Windows.DataPresenter.DataRecordCollection.LoadDataItemRecordMap(DataItemRecordMap dataItemRecordMap, Boolean recursive) at Infragistics.Windows.DataPresenter.DataPresenterBase.GetRecordsFromDataItems(Object[] dataItems, Boolean recursive) at Infragistics.Windows.DataPresenter.DataPresenterBase.ProcessPendingSelectedDataItems() at Infragistics.Windows.DataPresenter.DataPresenterBase.OnSelectedDataItemChanged(DependencyObject target, DependencyPropertyChangedEventArgs e) at System.Windows.DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs e) at System.Windows.FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs e) at Infragistics.Windows.DataPresenter.DataPresenterBase.OnPropertyChanged(DependencyPropertyChangedEventArgs e) at Infragistics.Windows.DataPresenter.XamDataGrid.OnPropertyChanged(DependencyPropertyChangedEventArgs e) at System.Windows.DependencyObject.NotifyPropertyChange(DependencyPropertyChangedEventArgs args) at System.Windows.DependencyObject.UpdateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry& newEntry, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType) at System.Windows.DependencyObject.InvalidateProperty(DependencyProperty dp, Boolean preserveCurrentValue) at System.Windows.Data.BindingExpressionBase.Invalidate(Boolean isASubPropertyChange) at System.Windows.Data.BindingExpression.TransferValue(Object newValue, Boolean isASubPropertyChange) at MS.Internal.Data.PropertyPathWorker.UpdateSourceValueState(Int32 k, ICollectionView collectionView, Object newValue, Boolean isASubPropertyChange) at MS.Internal.Data.ClrBindingWorker.OnSourcePropertyChanged(Object o, String propName) at System.Windows.WeakEventManager.ListenerList`1.DeliverEvent(Object sender, EventArgs e, Type managerType) at System.ComponentModel.PropertyChangedEventManager.OnPropertyChanged(Object sender, PropertyChangedEventArgs args) at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o) at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)