diff --git a/src/Files.App.Controls/BreadcrumbBar/BreadcrumbBar.cs b/src/Files.App.Controls/BreadcrumbBar/BreadcrumbBar.cs index 500fee8a96a0..2541bbf9896a 100644 --- a/src/Files.App.Controls/BreadcrumbBar/BreadcrumbBar.cs +++ b/src/Files.App.Controls/BreadcrumbBar/BreadcrumbBar.cs @@ -63,6 +63,7 @@ protected override void OnApplyTemplate() _itemsRepeater.Layout = _itemsRepeaterLayout; _itemsRepeater.ElementPrepared += ItemsRepeater_ElementPrepared; + _itemsRepeater.ElementClearing += ItemsRepeater_ElementClearing; _itemsRepeater.ItemsSourceView.CollectionChanged += ItemsSourceView_CollectionChanged; } @@ -126,6 +127,9 @@ private void ItemsRepeater_ElementPrepared(ItemsRepeater sender, ItemsRepeaterEl if (args.Element is not BreadcrumbBarItem item || _itemsRepeater is null) return; + item.IsLastItem = false; + item.IsEllipsis = false; + if (args.Index == _itemsRepeater.ItemsSourceView.Count - 1) { _lastBreadcrumbBarItem = item; @@ -148,5 +152,14 @@ private void ItemsSourceView_CollectionChanged(object? sender, System.Collection item.IsLastItem = true; } } + + private void ItemsRepeater_ElementClearing(ItemsRepeater sender, ItemsRepeaterElementClearingEventArgs args) + { + if (args.Element is BreadcrumbBarItem item) + { + item.IsLastItem = false; + item.IsEllipsis = false; + } + } } }