ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Desktop.Mapping Namespace / MapView Class / GetSelectedSections Method
Example

In This Topic
    GetSelectedSections Method
    In This Topic
    Returns the collection of voxel sections selected in the TOC.
    Syntax
    Public Function GetSelectedSections() As IReadOnlyList(Of SectionDefinition)
    public IReadOnlyList<SectionDefinition> GetSelectedSections()

    Return Value

    The collection of voxel sections selected in the TOC.
    Example
    Get/Set Selected Voxel Assets from the TOC
    {
      var surfaces = MapView.Active.GetSelectedIsosurfaces();
      //set selected w/ MapView.Active.SelectVoxelIsosurface(isoSurface)
      var slices = MapView.Active.GetSelectedSlices();
      //set selected w/ MapView.Active.SelectVoxelSlice(slice)
      var sections = MapView.Active.GetSelectedSections();
      //set selected w/ MapView.Active.SelectVoxelSection(section)
      var locked_sections = MapView.Active.GetSelectedLockedSections();
      //set selected w/ MapView.Active.SelectVoxelLockedSection(locked_section)
    }
    Get the Selected Section in TOC
    {
      var section = MapView.Active?.GetSelectedSections()?.FirstOrDefault();
      if (section != null)
      {
        //Do something with the section
      }
    }
    Get Voxel Layer for the Selected Section in TOC
    {
      voxelLayer = null;
      var section = MapView.Active?.GetSelectedSections()?.FirstOrDefault();
      if (section != null)
      {
        voxelLayer = section.Layer;
        //TODO - use the layer
      }
    }
    Lock a Section/Create a Locked Section
    {
      // Note: call within QueuedTask.Run()
      {
        if (voxelLayer.Visualization != VoxelVisualization.Surface)
          voxelLayer.SetVisualization(VoxelVisualization.Surface);
        voxelLayer.SetSectionContainerExpanded(true);
        voxelLayer.SetLockedSectionContainerExpanded(true);
        voxelLayer.SetLockedSectionContainerVisibility(true);
    
        //Use the SelectedVariableProfile to get the sections
        //via its associated volume
        var volume = voxelLayer.SelectedVariableProfile.Volume;
    
        //get the selected section
        var section = MapView.Active.GetSelectedSections().FirstOrDefault();
        if (section == null)
        {
          section = volume.GetSections().FirstOrDefault();
        }
    
        if (section == null)
          return;
    
        //Lock the section (Creates a locked section, deletes
        //the section)
        //if (voxelLayer.CanLockSection(section))
        //	voxelLayer.LockSection(section);
        if (volume.CanLockSection(section))
          volume.LockSection(section);
      }
    }
    Requirements

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

    ArcGIS Pro version: 3.0 or higher.
    See Also