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")].