Udostępnij za pośrednictwem


Interfejs CodeAttribute2

Określa atrybut dla elementu kodu.

Przestrzeń nazw:  EnvDTE80
Zestaw:  EnvDTE80 (w EnvDTE80.dll)

Składnia

'Deklaracja
<GuidAttribute("35187E2A-E5F6-4F89-A4CE-DA254640855B")> _
Public Interface CodeAttribute2 _
    Inherits CodeAttribute
[GuidAttribute("35187E2A-E5F6-4F89-A4CE-DA254640855B")]
public interface CodeAttribute2 : CodeAttribute
[GuidAttribute(L"35187E2A-E5F6-4F89-A4CE-DA254640855B")]
public interface class CodeAttribute2 : CodeAttribute
[<GuidAttribute("35187E2A-E5F6-4F89-A4CE-DA254640855B")>]
type CodeAttribute2 =  
    interface 
        interface CodeAttribute 
    end
public interface CodeAttribute2 extends CodeAttribute

Typ CodeAttribute2 uwidacznia następujące elementy członkowskie.

Właściwości

  Nazwa Opis
Właściwość publiczna Arguments Pobiera Kolekcja CodeElement obiektów, które zawiera CodeAttributeArgument obiekty skojarzone z tym atrybutem.
Właściwość publiczna Children Pobiera kolekcja obiektów zawartych wewnątrz tej konstrukcji kodu.
Właściwość publiczna Collection Pobiera Kolekcja CodeAttribute2 obiektów.
Właściwość publiczna DTE Pobiera obiekt rozszerzeń najwyższego poziomu.
Właściwość publiczna EndPoint Pobiera edytowany punkt końcowy lokalizacją atrybutu kodu.
Właściwość publiczna Extender Zwraca żądanego Extender , jeśli jest on dostępny dla tego atrybutu kodu.
Właściwość publiczna ExtenderCATID Pobiera kategorii urządzenia Extender ID (Identyfikator CATID) dla obiektu.
Właściwość publiczna ExtenderNames Pobiera listę nazw dostępnych urządzeń Extender dla obiektu.
Właściwość publiczna FullName Pobiera pełną ścieżkę i nazwę pliku obiektu.
Właściwość publiczna InfoLocation Pobiera modelu kodu.
Właściwość publiczna IsCodeType Pobiera czy CodeType obiektu można uzyskać z tego obiektu.
Właściwość publiczna Kind Pobiera Wyliczenie wskazujące typ atrybutu.
Właściwość publiczna Language Pobiera stałą identyfikujący język programowania służący do tworzenia atrybutu.
Właściwość publiczna Name Ustawia lub pobiera nazwę atrybutu kodu.
Właściwość publiczna Parent Pobiera obiekt nadrzędny natychmiastowego atrybutu kodu.
Właściwość publiczna ProjectItem Pobiera ProjectItem skojarzonych z atrybutem kodu.
Właściwość publiczna StartPoint Pobiera TextPoint definiuje początku atrybutu.
Właściwość publiczna Target Ustawia lub pobiera docelowego atrybutu kodu.
Właściwość publiczna Value Ustawia lub pobiera dane dla atrybutu kodu.

Początek

Metody

  Nazwa Opis
Metoda publiczna AddArgument Dodaje atrybut argumentu.
Metoda publiczna Delete Usuwa wszystkie atrybuty w elemencie kodu.
Metoda publiczna GetEndPoint Zwraca TextPoint obiektu, który oznacza położenie końca atrybutu.
Metoda publiczna GetStartPoint Zwraca TextPoint obiektu, który definiuje położenia początku atrybutu.

Początek

Uwagi

CodeAttribute2 Obiekt reprezentuje pojedynczy atrybut metadanych modelu COM, skojarzone z elementem kodu.Można dodać nowe atrybuty z AddAttribute metoda i usuwanie atrybutów za pomocą Delete metody dla odpowiedniego obiektu.Można uzyskać i ustawić wartość atrybutu kodu przy użyciu tego obiektu.

[!UWAGA]

Wartości elementów modelu kodu, takich jak klasy, strukturach, funkcje, atrybuty, delegatów i tak dalej mogą być deterministyczny po dokonaniu niektórych rodzajów modyfikacji, co oznacza, że ich wartości nie mogą być powoływane do zawsze pozostają takie same.Aby uzyskać więcej informacji, zobacz sekcję wartości elementu modelu kod można zmienić w Odnajdowanie kodu za pomocą modelu kodu (Visual Basic).

Przykłady

// The following example creates a new namespace and attribute in the current class.
public void CreateClassAndAttrib(DTE2 applicationObject)
{
    // Before running, load or create a project.
    FileCodeModel2 fcm2 = GetFileCodeModel(applicationObject);
    CodeAttribute2 cmAttribute;
    CodeClass2 cmClass;

    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);
            }
            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;
}

Zobacz też

Informacje

Przestrzeń nazw EnvDTE80

Inne zasoby

Porady: kompilowanie i uruchamianie kodu modelu obiektów automatyzacji — przykłady

Odnajdowanie kodu za pomocą modelu kodu (Visual Basic)

Odnajdowanie kodu za pomocą modelu kodu (Visual C#)