Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
210
Error during OnPaint from ScrollCountInternal UltraWinGrid v10.2
posted

Hello,

I've seen a few posts about this on the site, but they were on different versions.

One of our customers (so not wide spread, but common with them) are running into an issue with our application that can take on one of two forms: 1.  One of the grids is replaced by a big red x.

2.  The application appears frozen.

For issue 1, I have the following call exception/call stack:

Exception object: 0a93b1cc
Exception type: System.NullReferenceException
Message: Object reference not set to an instance of an object.
InnerException: <none>
StackTrace (generated):
    SP       IP       Function
    0018B0B0 181A5788 Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.UltraGridRow.get_ScrollCountInternal()+0x68
    0018B0CC 181A5705 Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.UltraGridRow.Infragistics.Shared.ISparseArrayMultiItem.get_ScrollCount()+0x5
    0018B0D0 10477198 Infragistics2_Shared_v10_2!Infragistics.Shared.SparseArray.GetItemAtScrollIndex(Int32, Infragistics.Shared.ICreateItemCallback)+0x1f0
    0018B104 10476F71 Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.ScrollCountManagerSparseArray.GetItemAtScrollIndex(Int32, Boolean)+0x29
    0018B118 10476F07 Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.RowsCollection.GetRowAtScrollIndex(Int32, Boolean)+0x87
    0018B130 10476E67 Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.RowsCollection.GetRowAtScrollIndex(Int32)+0x7
    0018B134 10476E4C Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.UltraGridLayout.GetRowAtScrollPos(Int32)+0x2c
    0018B144 181A5E1D Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.ViewStyleBase.CreateRowsList_FixedRowsFeature(Infragistics.Win.UltraWinGrid.VisibleRowFetchRowContext ByRef, Infragistics.Win.UltraWinGrid.VisibleRow, Infragistics.Win.UltraWinGrid.UltraGridRow)+0xf5
    0018B1B0 1047743A Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.ViewStyleBase.RecreateRowList(Infragistics.Win.UltraWinGrid.RowScrollRegion)+0x1c2
    0018B264 10475675 Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.RowScrollRegion.GetMaxScrollPosition(Boolean, Boolean)+0x1f5
    0018B2B0 104743CA Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.RowScrollRegion.EnsureScrollRegionFilled(Boolean)+0x6a
    0018B2C0 104741EC Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.RowScrollRegion.RegenerateVisibleRows(Boolean)+0x74
    0018B2EC 10473FB2 Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.RowScrollRegion.WillScrollbarBeShown(Infragistics.Win.UltraWinGrid.ScrollbarVisibility)+0xb2
    0018B304 10473EED Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.ScrollRegionBase.WillScrollbarBeShown()+0xd
    0018B30C 1697951B Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.DataAreaUIElement.AddIntersectionHelper(Infragistics.Win.UIElementsCollection, Infragistics.Win.UltraWinGrid.RowScrollRegion, Infragistics.Win.UltraWinGrid.ColScrollRegion, Infragistics.Win.UltraWinGrid.RowScrollRegion, Infragistics.Win.UltraWinGrid.ColScrollRegion, Boolean, Boolean)+0x63b
    0018B454 169783EA Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.DataAreaUIElement.PositionChildElements()+0x42a
    0018B508 1527C45E Infragistics2_Win_v10_2!Infragistics.Win.UIElement.VerifyChildElements(Infragistics.Win.ControlUIElementBase, Boolean)+0x86
    0018B53C 16977FA6 Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.DataAreaUIElement.VerifyChildElements(Infragistics.Win.ControlUIElementBase, Boolean)+0xde
    0018B55C 16977EAA Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.DataAreaUIElement.set_Rect(System.Drawing.Rectangle)+0x3a
    0018B580 169772D7 Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.UltraGridUIElement.PositionChildElements()+0xb47
    0018B620 1527C45E Infragistics2_Win_v10_2!Infragistics.Win.UIElement.VerifyChildElements(Infragistics.Win.ControlUIElementBase, Boolean)+0x86
    0018B654 16976685 Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.UltraGridUIElement.VerifyChildElements(Infragistics.Win.ControlUIElementBase, Boolean)+0x3d
    0018B688 16A0F662 Infragistics2_Win_v10_2!Infragistics.Win.UIElement.DrawHelper(System.Drawing.Graphics, System.Drawing.Rectangle, Boolean, Infragistics.Win.AlphaBlendMode, Boolean, Boolean, Boolean)+0x1b2
    0018B9AC 16A0F33F Infragistics2_Win_v10_2!Infragistics.Win.ControlUIElementBase.Draw(System.Drawing.Graphics, System.Drawing.Rectangle, Boolean, Infragistics.Win.AlphaBlendMode, System.Drawing.Size, Boolean)+0x177
    0018BA54 16A0F1AE Infragistics2_Win_v10_2!Infragistics.Win.ControlUIElementBase.Draw(System.Drawing.Graphics, System.Drawing.Rectangle, Boolean, Infragistics.Win.AlphaBlendMode)+0x4e
    0018BA90 1A89275A Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.UltraGridUIElement.Draw(System.Drawing.Graphics, System.Drawing.Rectangle, Boolean, Infragistics.Win.AlphaBlendMode)+0x62
    0018BAB8 16A0F13D Infragistics2_Win_v10_2!Infragistics.Win.UltraControlBase.OnPaint(System.Windows.Forms.PaintEventArgs)+0x85
    0018BADC 169764F5 Infragistics2_Win_UltraWinGrid_v10_2!Infragistics.Win.UltraWinGrid.UltraGrid.OnPaint(System.Windows.Forms.PaintEventArgs)+0xb5
    0018BB20 6BFA732A System_Windows_Forms_ni!System.Windows.Forms.Control.PaintWithErrorHandling(System.Windows.Forms.PaintEventArgs, Int16, Boolean)+0x9a
    0018BB5C 6BFA99A4 System_Windows_Forms_ni!System.Windows.Forms.Control.WmPaint(System.Windows.Forms.Message ByRef)+0x1d4
    0018BCA4 6BF989EE System_Windows_Forms_ni!System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef)+0x33e
    0018BCFC 6BF986A0 System_Windows_Forms_ni!System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message ByRef)+0x10
    0018BD04 6BF98621 System_Windows_Forms_ni!System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message ByRef)+0x31
    0018BD18 6BF984FA System_Windows_Forms_ni!System.Windows.Forms.NativeWindow.Callback(IntPtr, Int32, IntPtr, IntPtr)+0x5a

I don't have a call stack for symptom 2 in front of me, but it's very similar.  The difference is within get_ScrollCountInternal() there a TryGetValue() call that in turn iterates a dictionary (two actually).  When the application hangs I can see that the top stack frame address changes (indicating progress) but even after waiting 5+ minutes this iteration never completes causing control to never returned back from OnPaint.

Is this by chance fixed in an available update?  Below is my version information for UltraWinGrid:

0:000> lmvm Infragistics2_Win_UltraWinGrid_v10_2
start    end        module name
63580000 637ae000   Infragistics2_Win_UltraWinGrid_v10_2   (deferred)            
    Image path: C:\Windows\assembly\GAC_MSIL\Infragistics2.Win.UltraWinGrid.v10.2\10.2.20102.1004__7dd5c3163f2cd0cb\Infragistics2.Win.UltraWinGrid.v10.2.dll
    Image name: Infragistics2.Win.UltraWinGrid.v10.2.dll
    Has CLR image header, track-debug-data flag not set
    Timestamp:        Fri Jun 11 13:34:41 2010 (4C1281C1)
    CheckSum:         0022CEBD
    ImageSize:        0022E000
    File version:     10.2.20102.1004
    Product version:  10.2.20102.1004
    File flags:       0 (Mask 3F)
    File OS:          4 Unknown Win32
    File type:        2.0 Dll
    File date:        00000000.00000000
    Translations:     0000.04b0
    CompanyName:      Infragistics Inc.
    ProductName:      Infragistics2.Win.UltraWinGrid
    InternalName:     Infragistics2.Win.UltraWinGrid.v10.2.dll
    OriginalFilename: Infragistics2.Win.UltraWinGrid.v10.2.dll
    ProductVersion:   10.2.20102.1004
    FileVersion:      10.2.20102.1004
    FileDescription:  Infragistics2.Win.UltraWinGrid.v10.2
    LegalCopyright:   Copyright(c) 2001-2010 Infragistics, Inc.
    LegalTrademarks:  UltraGrid
    Comments:         Infragistics UltraGrid control class library - Release Version

Parents Reply Children
No Data