Unhandled exception rendering component: Object reference not set to an instance of an object.

System.NullReferenceException: Object reference not set to an instance of an object. at Syncfusion.Blazor.Charts.SfStockChart.CalculateAvailableSize() at Syncfusion.Blazor.Charts.SfStockChart.SetContainerSize() at Syncfusion.Blazor.Charts.SfStockChart.RenderStockChart(Boolean isRender) at Syncfusion.Blazor.Charts.SfStockChart.OnAfterScriptRendered() at Syncfusion.Blazor.SfBaseComponent.OnAfterRenderAsync(Boolean firstRender) at Syncfusion.Blazor.SfDataBoundComponent.OnAfterRenderAsync(Boolean firstRender) at Syncfusion.Blazor.Charts.SfStockChart.OnAfterRenderAsync(Boolean firstRender) at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle, ComponentState owningComponentState)

I'm trying to follow the example from https://www.syncfusion.com/blazor-components/blazor-stock-chart

The code is:

<div class="card" style="height:100%; width:100%">

<div class="card-body">

        <SfStockChart Title="AAPL Historical">

            <StockChartSeriesCollection>

                <StockChartSeries DataSource="@StockDetails" Type="ChartSeriesType.Candle" XName="Date" High="High" Low="Low" Open="Open" Close="Close" Volume="Volume"/>

            </StockChartSeriesCollection>

        </SfStockChart>

</div>

</div>


@code {

    #pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.


    [Parameter]

    public ICollection<StockDay> StockDays { get; set; }


    public class ChartData

    {

        public DateTime Date { get; set; }

        public Double Open { get; set; }

        public Double Low { get; set; }

        public Double Close { get; set; }

        public Double High { get; set; }

        public Double Volume { get; set; }

    }


    public List<ChartData> StockDetails = new List<ChartData>

    {

        new ChartData { Date = new DateTime(2012, 04, 02), Open= 85.9757, High = 90.6657,Low = 85.7685, Close = 90.5257,Volume = 660187068},

        new ChartData { Date = new DateTime(2012, 04, 09), Open= 89.4471, High = 92,Low = 86.2157, Close = 86.4614,Volume = 912634864},

        new ChartData { Date = new DateTime(2012, 04, 16), Open= 87.1514, High = 88.6071,Low = 81.4885, Close = 81.8543,Volume = 1221746066},

        new ChartData { Date = new DateTime(2012, 04, 23), Open= 81.5157, High = 88.2857,Low = 79.2857, Close = 86.1428,Volume = 965935749},

        new ChartData { Date = new DateTime(2012, 04, 30), Open= 85.4, High = 85.4857,Low = 80.7385, Close = 80.75,Volume = 615249365},

        new ChartData { Date = new DateTime(2012, 05, 07), Open= 80.2143, High = 82.2685,Low = 79.8185, Close = 80.9585,Volume = 541742692},

        new ChartData { Date = new DateTime(2012, 05, 14), Open= 80.3671, High = 81.0728,Low = 74.5971, Close = 75.7685,Volume = 708126233},

        new ChartData { Date = new DateTime(2012, 05, 21), Open= 76.3571, High = 82.3571,Low = 76.2928, Close = 80.3271,Volume = 682076215},

        new ChartData { Date = new DateTime(2012, 05, 28), Open= 81.5571, High = 83.0714,Low = 80.0743, Close = 80.1414,Volume = 480059584}

   };

}


4 Replies

DG Durga Gopalakrishnan Syncfusion Team June 27, 2022 01:17 PM UTC

Hi Stanislaw,
Greetings from Syncfusion.

In latest version, we have breaking changes related to script references. We request you to refer the CDN links with version number to use latest scripts. Please check with the below release notes for more information. We have prepared sample in latest version and attached for your reference. Please check with below snippet and sample.

<head>

<script src=https://cdn.syncfusion.com/blazor/20.1.60/syncfusion-blazor.min.js type="text/javascript"></script>

</head>

Release Notes : https://blazor.syncfusion.com/documentation/release-notes/20.1.47?type=all#breaking-changes

Please let us know if you have any concerns.

Regards,

Durga Gopalakrishnan.



DG Durga Gopalakrishnan Syncfusion Team June 27, 2022 01:20 PM UTC

Hi Stanislaw,


Please check with an attached sample.


Regards,

Durga Gopalakrishnan.


Attachment: StockChart_2ade7f3c.zip


SK Stanislaw Knapinski June 27, 2022 06:38 PM UTC

I compared my project to a newly created one, and swapped out the Syncfusion.Blazor dependency for
Syncfusion.Blazor.Navigations
Syncfusion.Blazor.StockChart
Syncfusion.Blazor.Themes

and it started working,
Regards



DG Durga Gopalakrishnan Syncfusion Team June 28, 2022 12:07 PM UTC

Hi Stanislaw,

Thanks for the update. Please get back to us if you need any further assistance. We are always happy in assisting you.

Regards,
Durga Gopalakrishnan.

Loader.
Up arrow icon