From fd3c44bb8197524e2b8a79dc5c4f88448d2e89b4 Mon Sep 17 00:00:00 2001 From: Max Katz Date: Tue, 25 Jan 2022 17:32:04 -0500 Subject: [PATCH] Ensure menu children are closed on menu flyout presenter detached --- .../Flyouts/MenuFlyoutPresenter.cs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/Avalonia.Controls/Flyouts/MenuFlyoutPresenter.cs b/src/Avalonia.Controls/Flyouts/MenuFlyoutPresenter.cs index 3a45c85c70..bcd859100a 100644 --- a/src/Avalonia.Controls/Flyouts/MenuFlyoutPresenter.cs +++ b/src/Avalonia.Controls/Flyouts/MenuFlyoutPresenter.cs @@ -43,5 +43,18 @@ namespace Avalonia.Controls { return new MenuItemContainerGenerator(this); } + + protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e) + { + base.OnDetachedFromVisualTree(e); + + foreach (var i in LogicalChildren) + { + if (i is MenuItem menuItem) + { + menuItem.IsSubMenuOpen = false; + } + } + } } }