From b0d8ff69ea300769018181a6d604bbde1f4118dc Mon Sep 17 00:00:00 2001 From: Dmitriy Arndt Date: Tue, 26 Sep 2017 00:11:32 +0300 Subject: [PATCH] Fixed: MenuItem with sub-items is not closed when other menu item without sub-items is selected #226 --- src/Avalonia.Controls/MenuItem.cs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/Avalonia.Controls/MenuItem.cs b/src/Avalonia.Controls/MenuItem.cs index 926c240e57..dadd3b910b 100644 --- a/src/Avalonia.Controls/MenuItem.cs +++ b/src/Avalonia.Controls/MenuItem.cs @@ -307,6 +307,21 @@ namespace Avalonia.Controls () => IsSubMenuOpen = true, TimeSpan.FromMilliseconds(400)); } + else + { + var parentItem = Parent as MenuItem; + if (parentItem != null) + { + foreach (var sibling in parentItem.Items + .OfType() + .Where(x => x != this && x.IsSubMenuOpen)) + { + sibling.CloseSubmenus(); + sibling.IsSubMenuOpen = false; + sibling.IsSelected = false; + } + } + } } ///