After getting nowhere with Infragistics on my issue with the Dispose() causing a crash with Ideablade, I decided to get a response from Ideablade. Ideablade is able to reproduce the crash when using Ideablade DevForce Classic 3.6.9.1 (which supposedly supports Infragistics 9.2) where if your grid is binded with Ideablade and you click a cell on the UltraGrid, then close the form, you get a crash. They are telling me in is an issue with the grid's dispose(), however it only happens when binded with Ideablade.
So if someone could please let me know if this is a problem with Infragistics 9.2 UltraGrid I would appreciate it. This upgrade has been a headache and I would like to put it to rest. I had a support case that is being ignored now from Infragistics so any help with this would be appreciated.
The error is:
at Infragistics.Win.UltraWinGrid.UltraGridColumn.get_IsFirstVisibleColumnOnLevel()
at Infragistics.Win.UltraWinGrid.UltraGridCell.CalculateCellOverlayRect(UIElement element, Int32 borderWidth, Boolean calculateInvalidRect)
at Infragistics.Win.UltraWinGrid.UltraGridCell.InvalidateElem(UIElement element, Boolean recalcRects)
at Infragistics.Win.UltraWinGrid.GridItemBase.InvalidateItem(RowScrollRegion rsr, ColScrollRegion csr, Boolean recalcRects)
at Infragistics.Win.UltraWinGrid.GridItemBase.InvalidateItem(RowScrollRegion rsr, Boolean recalcRects)
at Infragistics.Win.UltraWinGrid.RowScrollRegion.OnRowPropChange(VisibleRow vr, PropChangeInfo propChange)
at Infragistics.Win.UltraWinGrid.VisibleRow.OnSubObjectPropChanged(PropChangeInfo propChange)
at Infragistics.Shared.SubObjectBase.NotifyPropChange(PropChangeInfo trigger)
at Infragistics.Shared.SubObjectBase.NotifyPropChange(Enum propId, PropChangeInfo trigger)
at Infragistics.Win.UltraWinGrid.CellsCollection.OnSubObjectPropChanged(PropChangeInfo propChange)
at Infragistics.Win.UltraWinGrid.UltraGridCell.InternalSelect(Boolean value)
at Infragistics.Win.UltraWinGrid.UltraGrid.UpdateSelectedItems(Selected selected)
at Infragistics.Win.UltraWinGrid.UltraGrid.SelectNewSelection(Type type, Selected selected)
at Infragistics.Win.UltraWinGrid.UltraGrid.ClearSelectedCells()
at Infragistics.Win.UltraWinGrid.SelectedCellsCollection.Clear()
at Infragistics.Win.UltraWinGrid.UltraGridBase.Set_ListManager(Object newDataSource, String newDataMember)
at Infragistics.Win.UltraWinGrid.UltraGridBase.set_DataSource(Object value)
at IdeaBlade.UI.WinForms.InfragisticsControls.UltraGridBindingManager.SetGridDataSource()
at IdeaBlade.UI.WinForms.InfragisticsControls.UltraGridBindingManager.OnBindingSourceChanged()
at IdeaBlade.UI.WinForms.BindingManager.SetupBindingSource(BindingSource pBindingSource)
at IdeaBlade.UI.WinForms.BindingManager.get_BindingSource()
at IdeaBlade.UI.WinForms.BindingManager.set_BindingSource(BindingSource value)
at IdeaBlade.UI.WinForms.BindingManager.Dispose(Boolean disposing)
at System.ComponentModel.Component.Dispose()
at System.ComponentModel.Container.Dispose(Boolean disposing)
at System.ComponentModel.Container.Dispose()
at GridCrashSample.Form3.Dispose(Boolean disposing) in C:\Documents and Settings\john\Desktop\Development\BSOL\MyWorkingPlace\091120_GridCrashSample\GridCrashSample\Form3.Designer.vb:line 10
at System.Windows.Forms.Control.Dispose(Boolean disposing)
at System.Windows.Forms.ContainerControl.Dispose(Boolean disposing)
at System.Windows.Forms.Form.Dispose(Boolean disposing)
at GridCrashSample.Form1.Dispose(Boolean disposing) in C:\Documents and Settings\john\Desktop\Development\BSOL\MyWorkingPlace\091120_GridCrashSample\GridCrashSample\Form1.Designer.vb:line 13
at System.Windows.Forms.Form.WmClose(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.DefFrameProc(IntPtr hWnd, IntPtr hWndClient, Int32 msg, IntPtr wParam, IntPtr lParam)
at System.Windows.Forms.Form.DefWndProc(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmSysCommand(Message& m)
at System.Windows.Forms.Form.WmNcButtonDown(Message& m)
at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.Run(ApplicationContext context)
at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()
at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)
at GridCrashSample.My.MyApplication.Main(String[] Args) in 17d14f5c-a337-4978-8281-53493378c1071.vb:line 81
at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
Just in case anyone else has this problem I am updating this post..
Both Ideablade and Infragistics are trying to figure it out, no one knows who's problem it is yet but Ideablade gave me a workaround for the time being.
Add a FormClosing event handler and in there set UltraGrid1.Datasource=null
This works for me until the issue is resolved.
Two updates were sent to you earlier today.
is someone going to respond to the support case?
Thanks again for the information.
I've gotten some feedback from a developer. While it's possible for us to add a check-for-null in the property where this exception occurs, doing so may simply be covering up a much larger issue. We'll need something that we can run and debug to be able to determine what's actually happening here and to determine what the right course of action is.
I recommend continuing to work through the support case, since we're able to dig into much more detail through the support case than we can through our forums.
I asked Ideablade to provide what you need. I still have not heard from them. Their support is not up to par with yours. Their forum seems unmonitored. I appreciate you looking into it.