The below code will cause an exception to occur whenever you change pages:
@page "/"
@using Syncfusion.Blazor.Popups;
@using Syncfusion.Blazor.PivotView
<SfPivotView TValue="ProductDetails" Height="300">
<PivotViewTemplates>
<CellTemplate>
<Syncfusion.Blazor.Popups.SfTooltip>
<TooltipTemplates>
<Content>
TESTING
</Content>
</TooltipTemplates>
</Syncfusion.Blazor.Popups.SfTooltip>
</CellTemplate>
</PivotViewTemplates>
<PivotViewDataSourceSettings DataSource="@dataSource">
<PivotViewColumns>
<PivotViewColumn Name="Year"></PivotViewColumn>
<PivotViewColumn Name="Quarter"></PivotViewColumn>
</PivotViewColumns>
<PivotViewRows>
<PivotViewRow Name="Country"></PivotViewRow>
<PivotViewRow Name="Products"></PivotViewRow>
</PivotViewRows>
<PivotViewValues>
<PivotViewValue Name="Sold" Caption="Units Sold"></PivotViewValue>
<PivotViewValue Name="Amount" Caption="Sold Amount"></PivotViewValue>
</PivotViewValues>
</PivotViewDataSourceSettings>
</SfPivotView>
@code{
public List<ProductDetails> dataSource { get; set; }
protected override void OnInitialized()
{
this.dataSource = ProductDetails.GetProductData().ToList();
}
public class ProductDetails
{
public int Sold { get; set; }
public double Amount { get; set; }
public string Country { get; set; }
public string Products { get; set; }
public string Year { get; set; }
public string Quarter { get; set; }
public static List<ProductDetails> GetProductData()
{
List<ProductDetails> productData = new List<ProductDetails>();
productData.Add(new ProductDetails { Sold = 31, Amount = 52824, Country = "France", Products = "Mountain Bikes", Year = "FY 2015", Quarter = "Q1" });
productData.Add(new ProductDetails { Sold = 51, Amount = 86904, Country = "France", Products = "Mountain Bikes", Year = "FY 2015", Quarter = "Q2" });
productData.Add(new ProductDetails { Sold = 90, Amount = 153360, Country = "France", Products = "Mountain Bikes", Year = "FY 2015", Quarter = "Q3" });
productData.Add(new ProductDetails { Sold = 25, Amount = 42600, Country = "France", Products = "Mountain Bikes", Year = "FY 2015", Quarter = "Q4" });
return productData;
}
}
}
The exception looks like this:
Microsoft.JSInterop.JSException: Cannot read property 'blazor__instance' of null
TypeError: Cannot read property 'blazor__instance' of null
at Object.destroy (https://localhost:44366/_content/Syncfusion.Blazor/scripts/sf-tooltip-89e6e2.min.js:1:23226)
at https://localhost:44366/_framework/blazor.server.js:8:31421
at new Promise (<anonymous>)
at e.beginInvokeJSFromDotNet (https://localhost:44366/_framework/blazor.server.js:8:31390)
at https://localhost:44366/_framework/blazor.server.js:1:19202
at Array.forEach (<anonymous>)
at e.invokeClientMethod (https://localhost:44366/_framework/blazor.server.js:1:19173)
at e.processIncomingData (https://localhost:44366/_framework/blazor.server.js:1:17165)
at e.connection.onreceive (https://localhost:44366/_framework/blazor.server.js:1:10276)
at WebSocket.i.onmessage (https://localhost:44366/_framework/blazor.server.js:1:38091)
at Microsoft.JSInterop.JSRuntime.InvokeWithDefaultCancellation[T](String identifier, Object[] args)
at Syncfusion.Blazor.Popups.SfTooltip.ComponentDispose()
at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__139_0(Object state)
at Microsoft.AspNetCore.Components.Rendering.RendererSynchronizationContext.ExecuteSynchronously(TaskCompletionSource`1 completion, SendOrPostCallback d, Object state)
at Microsoft.AspNetCore.Components.Rendering.RendererSynchronizationContext.<>c.<.cctor>b__23_0(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at Microsoft.AspNetCore.Components.Rendering.RendererSynchronizationContext.ExecuteBackground(WorkItem item)
Looks like there is some problem disposing of the tooltip.
This worked in earlier versions.