ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Desktop.Mapping Namespace / CompositeLayer Class / Layers Property
Example

In This Topic
    Layers Property (CompositeLayer)
    In This Topic
    Gets a read-only collection of layers from the composite layer.
    Syntax
    Public Overridable ReadOnly Property Layers As ReadOnlyObservableCollection(Of Layer)
    public virtual ReadOnlyObservableCollection<Layer> Layers {get;}
    Example
    Remove empty groups
    {
        //Get the group layers
        IReadOnlyList<GroupLayer> groupLayers = map.Layers.OfType<GroupLayer>().ToList();
        //Note: Run within a QueuedTask
        foreach (var group in groupLayers)
        {
            if (group.Layers.Count == 0) //No layers in the group
            {
                //remove the group
                map.RemoveLayer(group);
            }
        }
    }
    Enumerate the Discipline Layers from a Building SceneLayer
    {
      var bldgLayer = MapView.Active.Map.GetLayersAsFlattenedList().OfType<BuildingSceneLayer>().First();
      var disciplines = new Dictionary<string, BuildingDisciplineSceneLayer>();
      //A Building layer has two children - Overview and FullModel
      //Overview is a FeatureSceneLayer
      //Full Model is a BuildingDisciplineSceneLayer that contains the disciplines
    
      var fullModel = bldgLayer.FindLayers("Full Model").First()
                                     as BuildingDisciplineSceneLayer;
    
      //collect information on the disciplines
      var name = fullModel.Name;
    
      var discipline = fullModel.GetDiscipline();
      //etc
      //TODO - use collected information
    
      disciplines.Add(discipline, fullModel);
    
      //Discipline layers are composite layers too
      foreach (var childDiscipline in fullModel.Layers
                          .OfType<BuildingDisciplineSceneLayer>())
      {
        //Discipline layers can also contain FeatureSceneLayers that render the
        //individual full model contents
        var content_names = string.Join(", ", childDiscipline.Layers
             .OfType<FeatureSceneLayer>().Select(fl => fl.Name));
        // Recursively call this "function" to go deeper
      }
    }
    Requirements

    Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)

    ArcGIS Pro version: 3.0 or higher.
    See Also