public static IEnumerable<IMapPane> GetMapPanes() { //Sorted by Map Uri return ProApp.Panes.OfType<IMapPane>().OrderBy((mp) => mp.MapView.Map.URI ?? mp.MapView.Map.Name); }
public static IReadOnlyList<Map> GetMapsFromMapPanes() { //Gets the unique list of Maps from all the MapPanes. //Note: The list of maps retrieved from the MapPanes //maybe less than the total number of Maps in the project. //It depends on what maps the user has actually opened. var mapPanes = ProApp.Panes.OfType<IMapPane>() .GroupBy((mp) => mp.MapView.Map.URI).Select(grp => grp.FirstOrDefault()); List<Map> uniqueMaps = new List<Map>(); foreach (var pane in mapPanes) uniqueMaps.Add(pane.MapView.Map); return uniqueMaps; }
Target Platforms: Windows 11, Windows 10