Compartilhar via


Propriedade CodeAttribute2.Kind

Obtém uma enumeração que indica o tipo de atributo.

Namespace:  EnvDTE80
Assembly:  EnvDTE80 (em EnvDTE80.dll)

Sintaxe

'Declaração
ReadOnly Property Kind As vsCMElement
vsCMElement Kind { get; }
property vsCMElement Kind {
    vsCMElement get ();
}
abstract Kind : vsCMElement with get
function get Kind () : vsCMElement

Valor de propriedade

Tipo: vsCMElement
Um valor de vsCMElement que indica o tipo de atributo.

Comentários

Dica

Os valores de código de modelagem elementos como classes, estruturas, funções, atributos, representantes, e assim por diante podem ser não determinísticas depois de fazer determinados tipos as edições do, o que significa que seus valores não podem ser confiáveis em para permanecer sempre os mesmos.Para obter mais informações, veja que os valores do elemento do modelo de código da seção podem ser alteradas em Descobrindo código usando o modelo de código (Visual Basic).

Exemplos

O exemplo a seguir cria uma nova namespace e atributo na classe atual e lista algumas das propriedades do atributo.

public void CreateClassAndAttrib(DTE2 applicationObject)
{
    // Before running, load or create a project.
    FileCodeModel2 fcm2 = GetFileCodeModel(applicationObject);
    CodeAttribute2 cmAttribute;
    CodeClass2 cmClass;
    String msg = null;

    if (fcm2 != null)
    {
        CodeNamespace cmNamespace;
        // Try to create a new namespace.
        try
        {
            cmNamespace = fcm2.AddNamespace("CMNamespace", -1);
            // If successful, create the other code elements.
            if (cmNamespace != null)
            {
                cmClass = (CodeClass2)cmNamespace.AddClass("ANewClass", 
                -1, null, null, vsCMAccess.vsCMAccessPrivate);
                cmAttribute = (CodeAttribute2)cmClass.AddAttribute
                ("NewAttribute", "AttributeValue", -1);
                msg += "InfoLocation: " + cmAttribute.InfoLocation + 
                Environment.NewLine;
                msg += "IsCodeType?: " + cmAttribute.IsCodeType + 
                Environment.NewLine;
                msg += "Kind: " + cmAttribute.Kind + 
                Environment.NewLine;
                MessageBox.Show(msg);                       
            }
            else
            {
                MessageBox.Show("Cannot continue - no filecodemodel 
                available.");
            }
        }
        catch (Exception ex)
        {
            MessageBox.Show("ERROR: " + ex);
        }
    }
}

public FileCodeModel2 GetFileCodeModel(DTE2 applicationObject)
{
    // Returns the FileCodeModel object of the active 
    // window.
    TextWindow txtWin = 
    (TextWindow)applicationObject.ActiveWindow.Object;
    FileCodeModel2 fcm2;
    if (txtWin != null)
    {
        try
        {
             fcm2 = (FileCodeModel2)txtWin.Parent.
             ProjectItem.FileCodeModel;
             return fcm2;
        }
        catch (Exception ex)
        {
             MessageBox.Show("ERROR: " + ex);
             return null;
        }
    }
    else
        return null;
}

Segurança do .NET Framework

Consulte também

Referência

CodeAttribute2 Interface

Namespace EnvDTE80

Outros recursos

Como compilar e executar os exemplos de código do modelo de objeto Automation

Descobrindo código usando o modelo de código (Visual Basic)

Descobrindo código usando o modelo de código (Visual C#)