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 que ya tenía y no registra la nueva; la orden CARGA_ENSAMBLADO lo indica en la ventana de resultados. 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. En la versión 26.0.0, Digi3D.AI no la muestra. |
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")].