Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NullReferenceException in RadDataGrid.Model.cs at line 456:13 #434

Open
JasperE84 opened this issue Jan 28, 2020 · 1 comment
Open

NullReferenceException in RadDataGrid.Model.cs at line 456:13 #434

JasperE84 opened this issue Jan 28, 2020 · 1 comment

Comments

@JasperE84
Copy link

Description

NullReferenceException in RadDataGrid.MeasureCell in Controls\Grid\Grid.UWP\View\RadDataGrid.Model.cs at line 456:13

Steps to Reproduce

Unknown, error showed up in my app telemetry. Perhaps the stack trace shows enough details to fix the issue.

Basic Information

On my AppCenter.ms insights, I saw the following crash log popping up while running UI-For-UWP on commit ID d16d485

Telerik.UI.Xaml.Controls.Grid
RadDataGrid.MeasureCell ($GridCellModel cell) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\View\RadDataGrid.Model.cs at 456:13
Telerik.UI.Xaml.Controls.Grid.RadDataGrid.Telerik.Core
IElementPresenter.MeasureContent (Object owner, Object content) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\View\RadDataGrid.Model.cs at 245:17
Telerik.UI.Xaml.Controls.Grid.Model.GridModel.Telerik.UI.Xaml.Controls.Grid
ITable.Measure ($Node node) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\GridModel.Table.cs at 162:13
Telerik.UI.Xaml.Controls.Grid.CellsController$1<System
__Canon>.MeasureCellDecorator (__Canon cellDecorator) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\TableModel\DisplayData\CellsController.cs at 338:17
Telerik.UI.Xaml.Controls.Grid.CellsController$1<System
__Canon>.GenerateCellsForRow ($IItemInfoNode rowDecorator, Int32 rowSlot) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\TableModel\DisplayData\CellsController.cs at 265:17
Telerik.UI.Xaml.Controls.Grid.Model
GridModel.GenerateCellsForReadOnlyRow (Int32 rowSlot, Double largestRowElementWidth, $IItemInfoNode rowDecorator) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\GridModel.Table.cs at 531:13
Telerik.UI.Xaml.Controls.Grid.Model.GridModel.Telerik.UI.Xaml.Controls.Grid
ITable.GenerateCellsForRow (Int32 rowSlot, Double largestRowElementHeight, $IItemInfoNode rowDecorator) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\GridModel.Table.cs at 116:17
Telerik.UI.Xaml.Controls.Grid.NodePool$2<System.__Canon,System
__Canon>.GenerateCellsForLine (Int32 slot, Double largestLength, __Canon lastElement) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\TableModel\DisplayData\NodePool.cs at 499:17
Telerik.UI.Xaml.Controls.Grid.NodePool$2<System.__Canon,System
__Canon>.GenerateContainer (IList$1<$ItemInfo> itemInfos) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\TableModel\DisplayData\NodePool.cs at 643:17
Telerik.UI.Xaml.Controls.Grid.NodePool$2<System.__Canon,System
__Canon>.GenerateTopBufferItems (Int32 startGenerateIndex, Double viewportLength, Double startOffset, $NodePool$2<__Canon,__Canon>MeasureContext context) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\TableModel\DisplayData\NodePool.cs at 948:21
Telerik.UI.Xaml.Controls.Grid.NodePool$2<System.__Canon,System
__Canon>.MeasureVertically ($RadSize availableSize, Double offset, Double bufferScale) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\TableModel\DisplayData\NodePool.cs at 1085:17
Telerik.UI.Xaml.Controls.Grid.NodePool$2<System.__Canon,System
__Canon>.OnMeasure ($RadSize availableSize, Double offset, Int32 frozenElementsCount, Double verticalBufferScale) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\TableModel\DisplayData\NodePool.cs at 292:17
Telerik.UI.Xaml.Controls.Grid.Model
GridModel.MeasureCells ($RadSize newAvailableSize) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\GridModel.Table.cs at 208:13
Telerik.UI.Xaml.Controls.Grid
RadDataGrid.OnCellsPanelMeasure ($RadSize newAvailableSize) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\View\RadDataGrid.cs at 757:13
Telerik.UI.Xaml.Controls.Grid.Primitives
DataGridCellsPanel.Measure () C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\View\Controls\DataGridCellsPanel.cs at 67:17
Telerik.UI.Xaml.Controls.Grid
RadDataGrid.SetVerticalOffset (Double physicalOffset, Boolean updateUI, Boolean updateScrollViewer) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\View\RadDataGrid.Scrolling.cs at 174:21
Telerik.UI.Xaml.Controls.Grid.RadDataGrid.Telerik.UI.Xaml.Controls.Grid
IGridView.SetScrollPosition ($RadPoint point, Boolean updateUI, Boolean updateScrollViewer) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\View\RadDataGrid.Model.cs at 58:13
Telerik.UI.Xaml.Controls.Grid.Model
GridModel.ScrollIndexIntoView ($ScrollIntoViewOperation$1<Int32> operation) C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\GridModel.Layout.cs at 214:13
Telerik.UI.Xaml.Controls.Grid.Model.GridModel
<>c__DisplayClass147_0.<ScrollIndexIntoViewCore>b__0 () C:\Repos\UI-For-UWP-Telerik\Controls\Grid\Grid.UWP\Model\GridModel.Layout.cs at 263:25
System
Action.Invoke () Invoke at 16707566
Telerik.UI.Xaml.Controls.Primitives.DelegateUpdate$1<Telerik.UI.Xaml.Controls.Data.ListView
UpdateFlags>.Process () C:\Repos\UI-For-UWP-Telerik\Controls\Primitives\Primitives.UWP\Common\Services\Updates\DelegateUpdate.cs at 22:17
Telerik.UI.Xaml.Controls.Primitives.UpdateServiceBase$1<Telerik.UI.Xaml.Controls.Grid
UpdateFlags>.ProcessUpdatesQueue () C:\Repos\UI-For-UWP-Telerik\Controls\Primitives\Primitives.UWP\Common\Services\Updates\UpdateServiceBase.cs at 315:21
Telerik.UI.Xaml.Controls.Primitives.UpdateServiceBase$1<Telerik.UI.Xaml.Controls.Grid
UpdateFlags>.OnUpdateCallback () C:\Repos\UI-For-UWP-Telerik\Controls\Primitives\Primitives.UWP\Common\Services\Updates\UpdateServiceBase.cs at 263:13
System.Func$1<System
TimeSpan>.Invoke () Invoke at 16707566
__Interop
ReverseComStubs.Stub_5 (Object __this, IntPtr __methodPtr) Stub_5 at 15732480
System.Runtime.InteropServices
McgMarshal.ThrowOnExternalCallFailed (Int32 hr, RuntimeTypeHandle typeHnd) f:\dd\ndp\fxcore\CoreRT\src\System.Private.Interop\src\Shared\McgMarshal.cs at 1189:13
__Interop
ComCallHelpers.Call ($__ComObject __this, RuntimeTypeHandle __typeHnd, Int32 __targetIndex) Call at 15732480
__Interop.ForwardComStubs
Stub_11<System.__Canon> (Void* InstParam, $__ComObject __this, Int32 __targetIndex) Stub_11 at 16707566
Microsoft.AppCenter.Utils
ApplicationLifecycleHelper.<ctor>b__17_1 (Object sender, $UnhandledErrorDetectedEventArgs eventArgs) at 0
@JasperE84 JasperE84 changed the title NullReferenceException in RadDataGrid.MeasureCell NullReferenceException in RadDataGrid.Model.cs at line 456:13 Jan 28, 2020
@APopatanasov
Copy link
Collaborator

Hi @JasperE84,

From the provided stack trace it seems that either the cell or the column is null. However, by simply adding a null check won't fix the issue, because on that particular line of code it is not expected to have a null cell or column - something in the engine of the DataGrid is causing that unexpected behavior.

From the Stacktrace it seems that some operation triggers the asynchronous rebuild of the DataGrid and at the same time it seems that scrolling is performed. I have tried to reproduce that behavior it on my side but without any success. Without being able to reproduce the issue I can not tell for sure what might be causing it and how can be fixed.

I will need a sample project with the exact setup of the control that demonstrates the scenario in which the exception occurs.

Could you please, provide me such a sample project, so I can continue with the investigation of the issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants