Browse Source

Fix updating index when TreeView reparented.

When an entire treeview is reparented, don't detach the child `TreeViewItem`s.

Fixes #3328
Steven Kirk 5 years ago
parent
commit
5a67237be3
1 changed files with 1 additions and 7 deletions
  1. 1 7
      src/Avalonia.Controls/Generators/TreeItemContainerGenerator.cs

+ 1 - 7
src/Avalonia.Controls/Generators/TreeItemContainerGenerator.cs

@@ -127,7 +127,7 @@ namespace Avalonia.Controls.Generators
                 Index = new TreeContainerIndex();
                 _treeView = treeViewOwner;
             }
-            else if (Owner.IsAttachedToLogicalTree)
+            else
             {
                 var treeView = Owner.GetSelfAndLogicalAncestors().OfType<TreeView>().FirstOrDefault();
                 
@@ -138,12 +138,6 @@ namespace Avalonia.Controls.Generators
                     _treeView = treeView;
                 }
             }
-            else
-            {
-                Clear();
-                Index = null;
-                _treeView = null;
-            }
         }
 
         class WrapperTreeDataTemplate : ITreeDataTemplate