Freigeben über


CodeClass2.AddEnum-Methode

Erstellt eine neue Enumeration in der Klasse.

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

Syntax

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

Parameter

  • Name
    Typ: String

    Erforderlich. Der Name der hinzuzufügenden Enumeration.

  • Position
    Typ: Object

    Optional. Standardwert = 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 Position 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: Object

    Optional. Standardwert = Nichts. Eine Variante, die ein SafeArray mit vollqualifizierten Typnamen oder CodeType-Objekte enthält, das bzw. die den zugrunde liegenden Typ der neuen Enumeration angeben.

  • Access
    Typ: vsCMAccess

    Optional. Eine vsCMAccess-Konstante, die den Zugriffstyp der Enumeration angibt.

Rückgabewert

Typ: CodeEnum
Ein CodeEnum-Objekt.

Hinweise

Die Gültigkeit der Argumente wird durch die Sprache des Codemodells bestimmt.

Hinweis

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

[C#]

public void CodeClass2AddEnumExample(DTE2 dte2)
{
    // Before running this example, open a code document from a project
    // and place the insertion point inside a class definition.
    try
    {
        // Retrieve the CodeClass at the insertion point.
        TextSelection sel =
            (TextSelection)dte2.ActiveDocument.Selection;
        CodeClass cls =
            (CodeClass)sel.ActivePoint.get_CodeElement(
            vsCMElement.vsCMElementClass);

        object pos = -1; // Place enum at end of members collection
        // Add enum.
        CodeEnum cenum = cls.AddEnum("TestEnum", pos, null, 
            vsCMAccess.vsCMAccessPublic);
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

.NET Framework-Sicherheit

Siehe auch

Referenz

CodeClass2 Schnittstelle

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#)