Freigeben über


CodeClass2.AddEvent-Methode

Fügt ein Klassenereignis hinzu.

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

Syntax

'Declaration
Function AddEvent ( _
    Name As String, _
    FullDelegateName As String, _
    CreatePropertyStyleEvent As Boolean, _
    Location As Object, _
    Access As vsCMAccess _
) As CodeEvent
CodeEvent AddEvent(
    string Name,
    string FullDelegateName,
    bool CreatePropertyStyleEvent,
    Object Location,
    vsCMAccess Access
)
CodeEvent^ AddEvent(
    String^ Name, 
    String^ FullDelegateName, 
    [InAttribute] bool CreatePropertyStyleEvent, 
    Object^ Location, 
    vsCMAccess Access
)
abstract AddEvent : 
        Name:string * 
        FullDelegateName:string * 
        CreatePropertyStyleEvent:bool * 
        Location:Object * 
        Access:vsCMAccess -> CodeEvent
function AddEvent(
    Name : String, 
    FullDelegateName : String, 
    CreatePropertyStyleEvent : boolean, 
    Location : Object, 
    Access : vsCMAccess
) : CodeEvent

Parameter

  • Name
    Typ: String

    Erforderlich. Name des Klassenereignisses, das hinzugefügt werden soll.

  • FullDelegateName
    Typ: String

    Erforderlich. Name des Delegaten, auf dem das Ereignis basieren soll. Dies fungiert als Vorlage für den neuen Ereignishandler.

  • CreatePropertyStyleEvent
    Typ: Boolean

    Optional. Erstellt ein Ereignis, das über einen Eigenschaftenstilaccessor verfügt. True, gibt an, dass das Ereignis über einen Accessor verfügen soll, und false gibt an, dass das Ereignis nicht über einen Accessor verfügen soll.

  • Location
    Typ: Object
  • Access
    Typ: vsCMAccess

    Optional. Eine vsCMAccess-Konstante.

Rückgabewert

Typ: EnvDTE80.CodeEvent
Gibt den erstellten Ereignishandler für die Klasse zurück.

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

[Visual Basic]

Sub AddEventExample(ByVal dte As 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.
        Dim sel As TextSelection = _
            CType(dte.ActiveDocument.Selection, TextSelection)
        Dim cls As CodeClass = _
            CType(sel.ActivePoint.CodeElement( _
            vsCMElement.vsCMElementClass), CodeClass)

        ' Create a new event handler.
        cls.AddEvent("NewOnConnection", "OnConnection", True, -1, 
          vsCMAccess.vsCMAccessPublic)
    Catch ex As Exception
        MsgBox(ex.Message)
    End Try
End Sub

[C#]

public void AddEventExample(DTE2 dte)
{
    // 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)dte.ActiveDocument.Selection;
        CodeClass cls = 
            (CodeClass)sel.ActivePoint.get_CodeElement(
            vsCMElement.vsCMElementClass);
        // Creates a new event handler.
        cls.AddEvent("NewOnConnection", "OnConnection", true, -1, 
          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#)