@@ -210,21 +210,22 @@ internal static RenderFragment GetFluentTreeItem(FluentTreeView owner, ITreeView
210210 {
211211 RenderFragment fluentTreeItem = builder =>
212212 {
213- int i = 0 ;
214- builder . OpenComponent < FluentTreeItem > ( i ++ ) ;
215- builder . AddAttribute ( i ++ , "Id" , item . Id ) ;
216- builder . AddAttribute ( i ++ , "Items" , item . Items ) ;
217- builder . AddAttribute ( i ++ , "Text" , item . Text ) ;
218- builder . AddAttribute ( i ++ , "InitiallySelected" , owner . SelectedItem == item ) ;
219- builder . AddAttribute ( i ++ , "Expanded" , item . Expanded ) ;
220- builder . AddAttribute ( i ++ , "Disabled" , item . Disabled ) ;
221- builder . AddAttribute ( i ++ , "IconCollapsed" , item . IconCollapsed ) ;
222- builder . AddAttribute ( i ++ , "IconExpanded" , item . IconExpanded ) ;
213+ //Don't use calculation or counter for building sequence numbers
214+ //See: https://learn.microsoft.com/en-us/aspnet/core/blazor/advanced-scenarios?view=aspnetcore-9.0&utm_source=chatgpt.com#manually-build-a-render-tree-rendertreebuilder
215+ builder . OpenComponent < FluentTreeItem > ( 0 ) ;
216+ builder . AddAttribute ( 1 , "Id" , item . Id ) ;
217+ builder . AddAttribute ( 2 , "Items" , item . Items ) ;
218+ builder . AddAttribute ( 3 , "Text" , item . Text ) ;
219+ builder . AddAttribute ( 4 , "InitiallySelected" , owner . SelectedItem == item ) ;
220+ builder . AddAttribute ( 5 , "Expanded" , item . Expanded ) ;
221+ builder . AddAttribute ( 6 , "Disabled" , item . Disabled ) ;
222+ builder . AddAttribute ( 7 , "IconCollapsed" , item . IconCollapsed ) ;
223+ builder . AddAttribute ( 8 , "IconExpanded" , item . IconExpanded ) ;
223224 builder . SetKey ( item . Id ) ;
224225
225226 if ( owner . ItemTemplate != null )
226227 {
227- builder . AddAttribute ( i ++ , "ChildContent" , owner . ItemTemplate ( item ) ) ;
228+ builder . AddAttribute ( 9 , "ChildContent" , owner . ItemTemplate ( item ) ) ;
228229 }
229230
230231 builder . CloseComponent ( ) ;
0 commit comments