CommandAttribute
Espacio de nombres: Digi21.DigiNG.Plugin.Command
Ensamblado: Digi21.DigiNG.Plugin
Marca una clase como orden de Digi3D.AI y le asigna el nombre con el que el usuario la ejecuta.
[AttributeUsage(AttributeTargets.Class)]
public class CommandAttribute : Attribute
Digi3D.AI registra como orden cada clase pública de la extensión que tiene este atributo o un atributo derivado, como LocalizableCommandAttribute. La clase tiene que derivar de Command y tener un constructor público sin parámetros.
El nombre de la orden es Name convertido a minúsculas: Digi3D.AI no distingue mayúsculas de minúsculas al ejecutarla. Si ya hay una orden .NET registrada con ese nombre, Digi3D.AI conserva la orden registrada y no registra la orden nueva; la orden CARGA_ENSAMBLADO indica en la ventana de resultados que el nombre ya está registrado. Si Name es null, Digi3D.AI no registra la clase.
Constructores
public CommandAttribute()
Crea el atributo con las tres propiedades a null. Las propiedades se asignan con la sintaxis de argumentos con nombre: [Command(Name = "MI_ORDEN")].
Propiedades
| Propiedad | Descripción |
|---|---|
string Name { get; set; } |
Nombre de la orden. |
string Description { get; set; } |
Descripción de la orden. El cuadro de diálogo Buscar orden muestra la descripción al seleccionar la orden y también busca el texto escrito en la descripción. |
string HelpUrl { get; set; } |
Dirección de la página de ayuda de la orden. En la versión 26.0.0, Digi3D.AI no la usa. |
Ejemplo
using Digi21.DigiNG.Plugin.Command;
namespace MideDistancia;
[Command(
Name = "MIDE_DISTANCIA_2D",
Description = "Mide la distancia en planta entre dos puntos.",
HelpUrl = "https://ejemplo.com/ayuda/mide_distancia_2d")]
[RelatedCommand(Name = "MIDE_DISTANCIA")]
public class OrdenMideDistancia2D : Command
{
public OrdenMideDistancia2D()
{
Initialize += (sender, e) => Dispose();
}
}
La orden completa de Command usa [Command(Name = "MIDE_DISTANCIA")].