diff --git a/src/Avalonia.Controls/ItemsControl.cs b/src/Avalonia.Controls/ItemsControl.cs
index ca1858cc65..67f726d056 100644
--- a/src/Avalonia.Controls/ItemsControl.cs
+++ b/src/Avalonia.Controls/ItemsControl.cs
@@ -260,8 +260,6 @@ namespace Avalonia.Controls
/// The details of the containers.
protected virtual void OnContainersDematerialized(ItemContainerEventArgs e)
{
- var toRemove = new List();
-
foreach (var container in e.Containers)
{
// If the item is its own container, then it will be removed from the logical tree
@@ -274,18 +272,16 @@ namespace Avalonia.Controls
if (containerControl != null)
{
- toRemove.Add(containerControl.Child);
((ISetLogicalParent)containerControl).SetParent(null);
+ LogicalChildren.Remove(containerControl.Child);
}
}
else
{
- toRemove.Add(container.ContainerControl);
+ LogicalChildren.Remove(container.ContainerControl);
}
}
}
-
- LogicalChildren.RemoveAll(toRemove);
}
///