Estoy intentando llamar a ZoomToLayer desde mi código personalizado (se muestra a continuación).
ESRI.ArcGIS.esriSystem.UID pUID = new ESRI.ArcGIS.esriSystem.UID();
ICommandItem CmdItem;
//pUID.Value = "{18DF94D9-0F8A-11D2-94B1-080009EEBECB}";
pUID.Value = "esriArcMapUI.LayerContextMenuItems";
pUID.SubType = 7;
CmdItem = IApplication.Document.CommandBars.Find(pUID, true, false);
CmdItem.Execute();
Tras la investigación encontré que CommandItem.Action está lanzando COMException:
'CmdItem.Action' lanzó una excepción de tipo 'System.Runtime.InteropServices.COMException: este método no puede invocarse con comandos incorporados.
Estoy tratando de usarlo como un comando y no como una herramienta ... por lo tanto, no puedo entender la excepción.
¿Alguna idea de por qué está sucediendo?