diff --git a/src/Avalonia.Controls/MenuItem.cs b/src/Avalonia.Controls/MenuItem.cs index 7b06d3c868..0bead04982 100644 --- a/src/Avalonia.Controls/MenuItem.cs +++ b/src/Avalonia.Controls/MenuItem.cs @@ -387,7 +387,7 @@ namespace Avalonia.Controls parent = parent.Parent; } - _isEmbeddedInMenu = parent is IMenu; + _isEmbeddedInMenu = parent.FindLogicalAncestorOfType(true) != null; } protected override void OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs e) diff --git a/src/Avalonia.Controls/Platform/PlatformManager.cs b/src/Avalonia.Controls/Platform/PlatformManager.cs index e39f0b1e99..acd45ad29a 100644 --- a/src/Avalonia.Controls/Platform/PlatformManager.cs +++ b/src/Avalonia.Controls/Platform/PlatformManager.cs @@ -29,7 +29,7 @@ namespace Avalonia.Controls.Platform if (platform == null) { - throw new Exception("Could not CreateWindow(): IWindowingPlatform is not registered."); + throw new Exception("Could not CreateTrayIcon(): IWindowingPlatform is not registered."); } return s_designerMode ? null : platform.CreateTrayIcon(); @@ -45,7 +45,7 @@ namespace Avalonia.Controls.Platform throw new Exception("Could not CreateWindow(): IWindowingPlatform is not registered."); } - return s_designerMode ? (IWindowImpl)platform.CreateEmbeddableWindow() : platform.CreateWindow(); + return s_designerMode ? platform.CreateEmbeddableWindow() : platform.CreateWindow(); } public static IWindowImpl CreateEmbeddableWindow()