This is a migrated thread and some comments may be shown as answers.

Telerik Gridview having a Column with TOOLTIP Shown

2 Answers 132 Views
GridView
This is a migrated thread and some comments may be shown as answers.
Jeffrey
Top achievements
Rank 1
Jeffrey asked on 13 Jun 2011, 03:48 AM
When scroll up and down the RadGridView which has a tooltip on one GridViewColumn, the whole silverlight application will crash.

IMPACT:

  1. Silverlight application crash and data lost.
  2. Because we need to export the GridView to excel and won't like to use Paged-GridView, it's really a blocking issue for us.

TELERIK VERSION:

2011.1.419.1040


REPRO STEPS:

1. Wrote a sample VS solution for repro.  See attached TelerikGridViewBUG.zip for detail.
2. Open Visual Studio solution TelerikGridViewBUG.sln with admin privilege.
3. Click through Visual Studio menu Debug -> Exceptions to launch the Exceptions dialog.
4. Check "Common Language Runtime Exceptions" checkbox on the Exceptions dialog and click OK to save.
5. Press F5 to launch the website in debugger mode and click the "Show Question" button on the page
6. On the launched "RadGridViewChildWindow", use Mouse to scroll down once. See the illustration below. See Illustration3 for detail.
7. Use mouse to scroll up to the top of the RadGridView.
8. Mouse hover on the "Question Description" column of the RadGridView.  You should choose the other row of the current Mouse located at.
For example, after you scroll up to the top of the RadGridView, your mouse are at row 4. Then try to move your mouse to row 2 and column "Question Description" to let the tooltip shown.
See Illustration4 for detail.

9. KEEP THE TOOLTIP SHOWN MORE THAN 2 SECONDS AND QUICKLY SCROLL DOWN.
10. You will see the Silverlight Application crash.

CALLSTACK

 

 

 

 

 Below is the callstack of crash exception.  I also highlighted several the lines from Telerik.Windows.Controls.GridView:

 

 >              System.Windows.dll!MS.Internal.XcpImports.CheckHResult(uint hr) + 0x48 bytes              

 

                 System.Windows.dll!MS.Internal.XcpImports.SetValue(MS.Internal.IManagedPeerBase obj, System.Windows.DependencyProperty property, bool b) + 0x6f bytes  

 

                 System.Windows.dll!System.Windows.DependencyObject.SetValue(System.Windows.DependencyProperty property, bool b) + 0x2e bytes           

 

                 System.Windows.dll!System.Windows.Controls.ToolTip.BeginClosing() + 0x251 bytes   
                 System.Windows.dll!System.Windows.Controls.ToolTip.OnIsOpenChanged(bool isOpen) + 0x3a bytes      

 

                 System.Windows.dll!System.Windows.Controls.ToolTip.OnIsOpenPropertyChanged(System.Windows.DependencyObject d, System.Windows.DependencyPropertyChangedEventArgs e) + 0x8d bytes         
        
        System.Windows.dll!System.Windows.DependencyObject.RaisePropertyChangeNotifications(System.Windows.DependencyProperty dp, object oldValue, object newValue) + 0x51 bytes    

 

                System.Windows.dll!System.Windows.DependencyObject.UpdateEffectiveValue(System.Windows.DependencyProperty property, System.Windows.EffectiveValueEntry oldEntry, ref System.Windows.EffectiveValueEntry newEntry, System.Windows.DependencyObject.ValueOperation operation) + 0xf6 bytes     

 

                System.Windows.dll!System.Windows.DependencyObject.SetValueInternal(System.Windows.DependencyProperty dp, object value, bool allowReadOnlySet) + 0x2ad bytes               

 

                System.Windows.dll!System.Windows.DependencyObject.SetValue(System.Windows.DependencyProperty property, bool b) + 0x60 bytes           

 

                System.Windows.dll!System.Windows.Controls.ToolTipService.UnregisterToolTip(System.Windows.UIElement owner) + 0x1d0 bytes     

 

                System.Windows.dll!System.Windows.Controls.ToolTipService.OnToolTipPropertyChanged(System.Windows.DependencyObject d, System.Windows.DependencyPropertyChangedEventArgs e) + 0x2f bytes    

 

                System.Windows.dll!System.Windows.DependencyObject.RaisePropertyChangeNotifications(System.Windows.DependencyProperty dp, object oldValue, object newValue) + 0x51 bytes  

 

                 System.Windows.dll!System.Windows.DependencyObject.UpdateEffectiveValue(System.Windows.DependencyProperty property, System.Windows.EffectiveValueEntry oldEntry, ref System.Windows.EffectiveValueEntry newEntry, System.Windows.DependencyObject.ValueOperation operation) + 0xf6 bytes   

 

                 System.Windows.dll!System.Windows.DependencyObject.SetValueInternal(System.Windows.DependencyProperty dp, object value, bool allowReadOnlySet) + 0x2ad bytes             

 

                 System.Windows.dll!System.Windows.Controls.ToolTipService.SetToolTip(System.Windows.DependencyObject element, object value) + 0x31 bytes            

 

                 Telerik.Windows.Controls.GridView!Telerik.Windows.Controls.GridView.GridViewCell.PrepareCellToolTip() + 0xe6 bytes
                 Telerik.Windows.Controls.GridView!Telerik.Windows.Controls.GridView.GridViewRow.PrepareCell(Telerik.Windows.Controls.GridView.GridViewCellBase cellBase, Telerik.Windows.Controls.GridViewColumn column) + 0x8a bytes        
                 Telerik.Windows.Controls.GridView!Telerik.Windows.Controls.GridView.GridViewCellsPanel.PrepareCell(Telerik.Windows.Controls.GridView.GridViewCellBase cell, Telerik.Windows.Controls.GridViewColumn column) + 0xa2 bytes 
            Telerik.Windows.Controls.GridView!Telerik.Windows.Controls.GridView.GridViewCellsPanel.GetVirtualizedCell(Telerik.Windows.Controls.GridViewColumn column, bool createIfNull) + 0x98 bytes          

 

                Telerik.Windows.Controls.GridView!Telerik.Windows.Controls.GridView.GridViewCellsPanel.RealizeAndMeasureCells(int startIndex, int predictedLastIndex, System.Func<int,int> calculateNextIndex) + 0xfc bytes  

 

                Telerik.Windows.Controls.GridView!Telerik.Windows.Controls.GridView.GridViewCellsPanel.UpdateVirtualizedCells() + 0x15e bytes      
              Telerik.Windows.Controls.GridView!Telerik.Windows.Controls.GridView.GridViewCellsPanel.MeasureOverride(System.Windows.Size availableSize) + 0x10f bytes              

 

                System.Windows.dll!System.Windows.FrameworkElement.MeasureOverride(System.IntPtr nativeTarget, float inWidth, float inHeight, out float outWidth, out float outHeight) + 0xa3 bytes 

 

                [Managed to Native Transition]         
                System.Windows.dll!MS.Internal.XcpImports.FrameworkElement_MeasureOverride(System.Windows.FrameworkElement element, System.Windows.Size availableSize) + 0x62 bytes    
                System.Windows.dll!System.Windows.FrameworkElement.MeasureOverride(System.Windows.Size availableSize) + 0x18 bytes               

 

                Telerik.Windows.Controls.GridView!Telerik.Windows.Controls.GridView.GridViewRowItem.MeasureOverride(System.Windows.Size constraint) + 0xea bytes      

 

                System.Windows.dll!System.Windows.FrameworkElement.MeasureOverride(System.IntPtr nativeTarget, float inWidth, float inHeight, out float outWidth, out float outHeight) + 0xa3 bytes   

 

                [Managed to Native Transition]        

 

                System.Windows.dll!MS.Internal.XcpImports.UIElement_Measure(System.Windows.UIElement element, System.Windows.Size availableSize) + 0x43 bytes               

 

                System.Windows.dll!System.Windows.UIElement.Measure(System.Windows.Size availableSize) + 0x47 bytes        

 

                Telerik.Windows.Controls.GridView!Telerik.Windows.Controls.GridView.GridViewVirtualizingPanel.MeasureOverride(System.Windows.Size constraint) + 0x12d1 bytes               

 

                 System.Windows.dll!System.Windows.FrameworkElement.MeasureOverride(System.IntPtr nativeTarget, float inWidth, float inHeight, out float outWidth, out float outHeight) + 0xa3 bytes 

 

                 [Appdomain Transition]                     

2 Answers, 1 is accepted

Sort by
0
Jeffrey
Top achievements
Rank 1
answered on 13 Jun 2011, 03:55 AM
Would you please let me know how to attach my project zip to you? Or I could send it to you?  It's about 1.3Mega bytes.
0
Vlad
Telerik team
answered on 14 Jun 2011, 09:50 AM
Hello,

Please open support ticket and attach the application. 

Best wishes,
Vlad
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
Tags
GridView
Asked by
Jeffrey
Top achievements
Rank 1
Answers by
Jeffrey
Top achievements
Rank 1
Vlad
Telerik team
Share this question
or