Browse Source

Merge pull request #1161 from arndtdv/master

Fixed: #226
Steven Kirk 8 years ago
parent
commit
247ef0b041
1 changed files with 15 additions and 0 deletions
  1. 15 0
      src/Avalonia.Controls/MenuItem.cs

+ 15 - 0
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<MenuItem>()
+                        .Where(x => x != this && x.IsSubMenuOpen))
+                    {
+                        sibling.CloseSubmenus();
+                        sibling.IsSubMenuOpen = false;
+                        sibling.IsSelected = false;
+                    }
+                }
+            }
         }
 
         /// <summary>