public static class Categories
Public MustInherit NotInheritable Class Categories
Component categories are defined in DAML. The DAML fragment below shows an example category declaration.
<categories>
<insertCategory id="ProjectContainers"/>
</categories>
Anyone can then register a component in the category. A component can optionally have a content sub-element where they can define any XML they wish. In the example below, just a few attributes have been added but this can be any XML desired.
<categories>
<updateCategory refID="ProjectContainers">
<insertComponent id="MapContainer" className="MapContainer">
<content type="Map" displayName="Maps"/>
</insertComponent>
</updateCategory>
</categories>
Any DAML command can also be added to a category by using by specifying a categoryRefID in its declaration. In this case, you can also use the content sub-element to define any custom data.
<button id="openMap" caption="Open" className="Controls.Cut" categoryRefID="ProjectContainers">
<content type="Map" displayName="Maps"/>
</button>
At runtime you can use the GetComponentElements function to retrieve all the components registered in a particular category, including DAML controls. When a ComponentElement is returned, you can call ComponentElement.GetContent to get a Systm.DAML.Linq.XElement representing the content node or use ComponentElement.ReadAttribute to simply read a string attribute. Call ComponentElement.CreateComponent to instantiate a new instance of the component. Note CreateComponent throws an exception when the component is referencing a DAML command.
System.Object
ArcGIS.Desktop.Framework.Categories
Target Platforms: Windows 11, Windows 10