ArcGIS Pro 2.9 API Reference Guide
AllowToolDamlID Method
Example 

ArcGIS.Core.CIM Namespace > EditingTemplateCIMExtensions Class : AllowToolDamlID Method
DAML ID of the tool.
Allows a construction tool on the template.
Syntax
public static void AllowToolDamlID( 
   CIMEditingTemplate templateDef,
   string id
)
Public Shared Sub AllowToolDamlID( _
   ByVal templateDef As CIMEditingTemplate, _
   ByVal id As String _
) 

Parameters

templateDef
id
DAML ID of the tool.
Exceptions
ExceptionDescription
The tool corresponding to the specified id cannot be found.
Remarks
The tool will be visible on the template.
Example
QueuedTask.Run(() =>
{
  //hide all tools except line tool on layer
  var featLayer = MapView.Active.Map.FindLayers("Roads").First();

  var editTemplates = featLayer.GetTemplates();
  var newCIMEditingTemplates = new List<CIMEditingTemplate>();

  foreach (var et in editTemplates)
  {
    //initialize template by activating default tool
    et.ActivateDefaultToolAsync();
    var cimEditTemplate = et.GetDefinition();
    //get the visible tools on this template
    var allTools = et.ToolIDs.ToList();
    //add the hidden tools on this template
    allTools.AddRange(cimEditTemplate.GetExcludedToolDamlIds().ToList());
    //hide all the tools then allow the line tool
    cimEditTemplate.SetExcludedToolDamlIds(allTools.ToArray());
    cimEditTemplate.AllowToolDamlID("esri_editing_SketchLineTool");
    newCIMEditingTemplates.Add(cimEditTemplate);
  }
  //update the layer templates
  var layerDef = featLayer.GetDefinition() as CIMFeatureLayer;
  // Set AutoGenerateFeatureTemplates to false for template changes to stick
  layerDef.AutoGenerateFeatureTemplates = false;
  layerDef.FeatureTemplates = newCIMEditingTemplates.ToArray();
  featLayer.SetDefinition(layerDef);
});
Requirements

Target Platforms: Windows 11, Windows 10, Windows 8.1

See Also

Reference

EditingTemplateCIMExtensions Class
EditingTemplateCIMExtensions Members