Freigeben über


CodeDelegateCreateExpression Klasse

Definition

Stellt einen Ausdruck dar, der einen Delegaten erstellt.

public ref class CodeDelegateCreateExpression : System::CodeDom::CodeExpression
public class CodeDelegateCreateExpression : System.CodeDom.CodeExpression
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class CodeDelegateCreateExpression : System.CodeDom.CodeExpression
type CodeDelegateCreateExpression = class
    inherit CodeExpression
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type CodeDelegateCreateExpression = class
    inherit CodeExpression
Public Class CodeDelegateCreateExpression
Inherits CodeExpression
Vererbung
CodeDelegateCreateExpression
Attribute

Beispiele

Im folgenden Beispielcode wird ein CodeDelegateCreateExpression verwendet, um einen Delegaten zu erstellen.

// Defines a delegate creation expression that creates an EventHandler delegate pointing to a method named TestMethod.
CodeDelegateCreateExpression^ createDelegate1 = gcnew CodeDelegateCreateExpression( gcnew CodeTypeReference( "System.EventHandler" ),gcnew CodeThisReferenceExpression,"TestMethod" );

// Attaches an EventHandler delegate pointing to TestMethod to the TestEvent event.
CodeAttachEventStatement^ attachStatement1 = gcnew CodeAttachEventStatement( gcnew CodeThisReferenceExpression,"TestEvent",createDelegate1 );

// A C# code generator produces the following source code for the preceeding example code:
//     this.TestEvent += new System.EventHandler(this.TestMethod);
// Defines a delegate creation expression that creates an EventHandler delegate pointing to a method named TestMethod.
CodeDelegateCreateExpression createDelegate1 = new CodeDelegateCreateExpression(
new CodeTypeReference( "System.EventHandler" ), new CodeThisReferenceExpression(), "TestMethod" );
// Attaches an EventHandler delegate pointing to TestMethod to the TestEvent event.
CodeAttachEventStatement attachStatement1 = new CodeAttachEventStatement( new CodeThisReferenceExpression(), "TestEvent", createDelegate1 );

// A C# code generator produces the following source code for the preceeding example code:

//     this.TestEvent += new System.EventHandler(this.TestMethod);
' Defines a delegate creation expression that creates an EventHandler delegate pointing to TestMethod.
Dim createDelegate1 As New CodeDelegateCreateExpression(New CodeTypeReference("System.EventHandler"), New CodeThisReferenceExpression(), "TestMethod")

' Attaches an EventHandler delegate pointing to TestMethod to the TestEvent event.
Dim attachStatement1 As New CodeAttachEventStatement(New CodeThisReferenceExpression(), "TestEvent", createDelegate1)

' A Visual Basic code generator produces the following source code for the preceeding example code:

'     AddHandler TestEvent, AddressOf Me.TestMethod

Hinweise

CodeDelegateCreateExpression stellt Code dar, der einen Delegaten erstellt. CodeDelegateCreateExpression wird häufig mit CodeAttachEventStatement oder CodeRemoveEventStatement verwendet, um einen Ereignishandler zum Anfügen oder Entfernen aus einem Ereignis darzustellen.

Die DelegateType -Eigenschaft gibt den Typ des zu erstellenden Delegaten an. Die TargetObject -Eigenschaft gibt das -Objekt an, das die Ereignishandlermethode enthält. Die MethodName -Eigenschaft gibt den Namen der Ereignishandlermethode an, deren Methodensignatur mit der Methodensignatur des Delegaten übereinstimmt.

In C# hat ein Delegaterstellungsausdruck in der Regel die folgende Form: new EventHandler(this.HandleEventMethod). In Visual Basic hat ein Delegaterstellungsausdruck in der Regel die folgende Form: AddressOf Me.HandleEventMethod.

Konstruktoren

CodeDelegateCreateExpression()

Initialisiert eine neue Instanz der CodeDelegateCreateExpression-Klasse.

CodeDelegateCreateExpression(CodeTypeReference, CodeExpression, String)

Initialisiert eine neue Instanz der CodeDelegateCreateExpression-Klasse.

Eigenschaften

DelegateType

Ruft den Datentyp des Delegaten ab oder legt diesen fest.

MethodName

Ruft den Namen der Ereignishandlermethode ab oder legt diesen fest.

TargetObject

Ruft das Objekt ab, das die Ereignishandlermethode enthält, oder legt dieses fest.

UserData

Ruft die benutzerdefinierbaren Daten für das aktuelle Objekt ab.

(Geerbt von CodeObject)

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für: