We are using Infragistics4.Win.UltraWinGrid.V23.1
sometimes we are getting an exception:
bei System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource) bei System.Collections.ObjectModel.Collection`1.RemoveAt(Int32 index) bei Infragistics.Win.UltraWinGrid.UltraGridRow.DeleteHelper() bei Infragistics.Win.UltraWinGrid.UltraGridRow.CancelEdit() bei Infragistics.Win.UltraWinGrid.UltraGrid.OnActiveRowCleared(Boolean update) bei Infragistics.Win.UltraWinGrid.UltraGridBase.SetActiveRow(UltraGridRow row, Boolean scrollIntoView) bei Infragistics.Win.ControlUIElementBase.ProcessClick(Object sender, EventArgs e) bei Infragistics.Win.Utilities.ProcessEvent(Control control, ProcessEvent eventToProcess, EventArgs e) bei Infragistics.Win.UltraControlBase.OnClick(EventArgs e) bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) bei System.Windows.Forms.Control.WndProc(Message& m) bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
I have no real clue how to fix it. Maybe we are using an event wrong or it takes too long is my idea. Can you help me?
Hello Arndt,
My team and I have done an initial review of this support case, and it is difficult to say exactly why this issue is happening from just the stack trace in this case. From the stack trace, it looks like the exception occurred as a result of removing the active row of the UltraGrid, but this should not cause an exception.
Do you have more information regarding your scenario or an isolated sample project that demonstrates the behavior you are seeing? If so, can you please provide that here?
Please let me know if you have any other questions or concerns on this matter.
That is hard to create we have so much extensions in this grid. Catching Events maybe you can only give me a hint is this: bei System.Collections.ObjectModel.Collection`1.RemoveAt(Int32 index)bei Infragistics.Win.UltraWinGrid.UltraGridRow.DeleteHelper()
removing the the object from the BindingList which we are using as
grid.datasource?
then i can maybe identify the place where our code is removing objects from datasource too early.
The DeleteHelper() method is called when deleting a particular UltraGridRow in the UltraGrid. There are places in which it calls to the parent collection’s BindingList and calls RemoveAt, but the index that is passed to RemoveAt is the index of the underlying item in the collection. This leads me to believe that perhaps this could be due to some sort of multi-threading problem on your end, as this should not differ at any point. Can you confirm whether or not you are using any multi-threaded operations with the UltraGrid in your application?