CodeModel2.AddEnum-Methode (String, Object, Object, Object, vsCMAccess)

Erstellt ein neues Enumerationscodekonstrukt und fügt den Code an der korrekten Position ein.

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

Syntax

'Declaration
Function AddEnum ( _
    Name As String, _
    Location As Object, _
    Position As Object, _
    Bases As Object, _
    Access As vsCMAccess _
) As CodeEnum
CodeEnum AddEnum(
    string Name,
    Object Location,
    Object Position,
    Object Bases,
    vsCMAccess Access
)
CodeEnum^ AddEnum(
    String^ Name, 
    Object^ Location, 
    Object^ Position, 
    Object^ Bases, 
    vsCMAccess Access
)
abstract AddEnum : 
        Name:string * 
        Location:Object * 
        Position:Object * 
        Bases:Object * 
        Access:vsCMAccess -> CodeEnum 
function AddEnum(
    Name : String, 
    Location : Object, 
    Position : Object, 
    Bases : Object, 
    Access : vsCMAccess
) : CodeEnum

Parameter

  • Name
    Typ: System.String
    Erforderlich.Der Name der hinzuzufügenden Enumeration.
  • Location
    Typ: System.Object
    Erforderlich.Der Pfad- und Dateiname für die neue Enumerationsdefinition.Je nach Sprache wird der Dateiname entweder relativ oder absolut zur Projektdatei angegeben.Die Datei wird dem Projekt hinzugefügt, wenn sie nicht bereits als Projektelement vorhanden ist.Wenn die Datei nicht erstellt und dem Projekt hinzugefügt werden kann, schlägt AddEnum fehl.
  • Position
    Typ: System.Object
    Optional.Standard = 0.Das Codeelement, hinter dem das neue Element hinzugefügt werden soll.Wenn der Wert ein CodeElement ist, wird das neue Element unmittelbar im Anschluss hinzugefügt.
    Wenn der Wert ein Long-Datentyp ist, gibt AddEnum das Element an, nach dem das neue Element hinzugefügt werden soll.
    Da die Zählung bei Auflistungen mit 1 beginnt, wird mit dem Wert 0 angegeben, dass das neue Element am Anfang der Auflistung eingefügt werden soll.Bei dem Wert -1 wird das Element am Ende eingefügt.
  • Bases
    Typ: System.Object
    Optional.Standardwert = Nothing.Eine Variante, die ein SafeArray mit vollqualifizierten Typnamen oder CodeType-Objekte enthält, das bzw. die den zugrunde liegenden Typ der neuen Enumeration angeben.

Rückgabewert

Typ: EnvDTE.CodeEnum
Ein CodeEnum-Objekt.

Implementiert

CodeModel.AddEnum(String, Object, Object, Object, vsCMAccess)

Hinweise

Die Gültigkeit der Argumente wird durch die Sprache des Codemodells bestimmt. Der Bases-Parameter wird in allen Programmiersprachen ignoriert.

Tipp

Die Werte von Codemodellelementen wie Klassen, Strukturen, Funktionen, Attributen, Delegaten usw. können nach bestimmten Bearbeitungsvorgängen nicht deterministisch sein, d. h., dass nicht mehr davon ausgegangen werden kann, dass ihre Werte immer unverändert bleiben. Weitere Informationen finden Sie im Abschnitt zum Änderungsverhalten von Codemodellelementwerten unter Ermitteln von Code über das Codemodell (Visual Basic).

Beispiele

Sub AddEnumExample2(ByVal dte As DTE2)

    ' Before running this example, open a code document from a project.
    Try
        Dim projItem As ProjectItem = dte.ActiveDocument.ProjectItem
        Dim cm As CodeModel = projItem.ContainingProject.CodeModel

        ' Create a new enum.
        cm.AddEnum("TestEnum", projItem.Name)
    Catch ex As Exception
        MsgBox(ex.Message)
    End Try

End Sub
public void AddEnumExample2(DTE2 dte)
{
    // Before running this example, open a code document from 
    // a project.
    try
    {
        ProjectItem projItem = dte.ActiveDocument.ProjectItem;
        CodeModel cm = projItem.ContainingProject.CodeModel;

        // Create a new enum.
        cm.AddEnum("TestEnum", projItem.Name, -1, null, 
            vsCMAccess.vsCMAccessPublic);
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

.NET Framework-Sicherheit

Siehe auch

Referenz

CodeModel2 Schnittstelle

AddEnum-Überladung

EnvDTE80-Namespace

Weitere Ressourcen

Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell

Ermitteln von Code über das Codemodell (Visual Basic)

Ermitteln von Code über das Codemodell (Visual C#)