ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Core.CIM Namespace / CIMLabelClass Class / StandardLabelPlacementProperties Property
Example

In This Topic
    StandardLabelPlacementProperties Property
    In This Topic
    Gets or sets the standard placement properties which are used when the map uses the standard label engine.
    Syntax
    public CIMStandardLabelPlacementProperties StandardLabelPlacementProperties {get; set;}
    Public Property StandardLabelPlacementProperties As CIMStandardLabelPlacementProperties
    Example
    Modify the Placement/Position of labels - Point geometry
    //Note: call within QueuedTask.Run()
    
    //Get the layer's definition
    var lyrDefn = featureLayer.GetDefinition() as CIMFeatureLayer;
    //Get the label classes - we need the first one
    var listLabelClasses = lyrDefn.LabelClasses.ToList();
    var theLabelClass = listLabelClasses.FirstOrDefault();
    
    //Modify label Placement 
    //Check if the label engine is Maplex or standard.
    CIMGeneralPlacementProperties labelEngine = 
       MapView.Active.Map.GetDefinition().GeneralPlacementProperties;
    if (labelEngine is CIMStandardGeneralPlacementProperties) //Current labeling engine is Standard labeling engine               
      theLabelClass.StandardLabelPlacementProperties.PointPlacementMethod = 
               StandardPointPlacementMethod.OnTopPoint;
    else    //Current labeling engine is Maplex labeling engine            
      theLabelClass.MaplexLabelPlacementProperties.PointPlacementMethod = 
              MaplexPointPlacementMethod.CenteredOnPoint;
    
    lyrDefn.LabelClasses = listLabelClasses.ToArray(); //Set the labelClasses back
    featureLayer.SetDefinition(lyrDefn); //set the layer's definition
    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also