From 3d4066af55a6a80ff599daddd0f15faa705e87fb Mon Sep 17 00:00:00 2001 From: ClemensFischer Date: Mon, 24 Mar 2025 18:59:58 +0100 Subject: [PATCH] Fixed ParentMenuItems for WinUI --- MapUiTools/Shared/MapLayerMenuItem.cs | 2 +- MapUiTools/WinUI/MapMenuItem.WinUI.cs | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/MapUiTools/Shared/MapLayerMenuItem.cs b/MapUiTools/Shared/MapLayerMenuItem.cs index 11e2054a..b7956cac 100644 --- a/MapUiTools/Shared/MapLayerMenuItem.cs +++ b/MapUiTools/Shared/MapLayerMenuItem.cs @@ -83,7 +83,7 @@ namespace MapControl.UiTools { var index = 1; - foreach (var itemLayer in ParentMenuItems? + foreach (var itemLayer in ParentMenuItems .OfType() .Select(item => item.MapLayer) .Where(itemLayer => itemLayer != null)) diff --git a/MapUiTools/WinUI/MapMenuItem.WinUI.cs b/MapUiTools/WinUI/MapMenuItem.WinUI.cs index 74ae540c..d3cacd5a 100644 --- a/MapUiTools/WinUI/MapMenuItem.WinUI.cs +++ b/MapUiTools/WinUI/MapMenuItem.WinUI.cs @@ -13,9 +13,13 @@ namespace MapControl.UiTools { public abstract class MapMenuItem : ToggleMenuFlyoutItem { + protected MapMenuItem() + { + Loaded += (s, e) => ParentMenuItems = ((Panel)VisualTreeHelper.GetParent(this)).Children.OfType().ToList(); + } + public abstract Task Execute(MapBase map); - protected IEnumerable ParentMenuItems - => ((Panel)VisualTreeHelper.GetParent(this)).Children.OfType(); + protected IList ParentMenuItems { get; private set; } } }