Hi,
In attached example you can replicate two issues with data source refresh when EnableCollapseAll="true".
1. User could not drill down when updates data source of tree grid with subset of previous data source
Step to reproduce:
a. Select from top drop down any value which is first child of Current selection in the grid (in our case "Balance Sheet")
b. When grid refreshes user could not drill down
2. Page is blocked when user changes to data source which includes nodes from previous data source
Steps to reproduce:
a. Drill down two times in tree grid
b. Select from top drop down select any value which is from second level of hierarchy (for example "Total Assets")
c. Now from top drop down select its parent (for Example "Balance Sheet")
d. Now from top drop down select its parent (for Example "Financial Hierarchy")
e. Browser will be blocked and user would need to reload, here is the error discovered with google chrome dev tools:
Error: System.Collections.Generic.KeyNotFoundException: The specified key 'parentUniqueID' does not exist in the ExpandoObject.
at System.Dynamic.ExpandoObject.System.Collections.Generic.IDictionary<System.String,System.Object>.get_Item(String key)
at Syncfusion.Blazor.TreeGrid.Internal.ExpandCollapse`1.ExpandCollapseRow(Row`1 Row)
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 System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.AspNetCore.Components.Rendering.RendererSynchronizationContext.ExecuteBackground(WorkItem item)
Please validate if this is Syncfusion bug or advise on possible solution.
Attachment:
TreeGridWithEnableCollapseAll_3483d787.zip