Browse Source

Don't assume Items are MenuItems.

They may be created via `DataTemplate`s.
pull/1812/head
Steven Kirk 8 years ago
parent
commit
ca34bf9aba
  1. 9
      src/Avalonia.Controls/MenuItem.cs

9
src/Avalonia.Controls/MenuItem.cs

@ -342,7 +342,7 @@ namespace Avalonia.Controls
if (menuItem != null && menuItem.Parent == this) if (menuItem != null && menuItem.Parent == this)
{ {
foreach (var child in Items.OfType<MenuItem>()) foreach (var child in ((IMenuItem)this).SubItems)
{ {
if (child != menuItem && child.IsSubMenuOpen) if (child != menuItem && child.IsSubMenuOpen)
{ {
@ -368,12 +368,9 @@ namespace Avalonia.Controls
/// </summary> /// </summary>
private void CloseSubmenus() private void CloseSubmenus()
{ {
if (Items != null) foreach (var child in ((IMenuItem)this).SubItems)
{ {
foreach (var child in Items.OfType<MenuItem>()) child.IsSubMenuOpen = false;
{
child.IsSubMenuOpen = false;
}
} }
} }

Loading…
Cancel
Save