다음을 통해 공유


CodeDelegateCreateExpression 클래스

정의

대리자를 만드는 식을 나타냅니다.

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
상속
CodeDelegateCreateExpression
특성

예제

다음 예제 코드에서는 대리자를 CodeDelegateCreateExpression 만드는 데 사용합니다.

// 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

설명

CodeDelegateCreateExpression 는 대리자를 만드는 코드를 나타냅니다. CodeDelegateCreateExpression 는 이벤트 처리기와 함께 CodeAttachEventStatement 사용되거나 CodeRemoveEventStatement 이벤트에서 제거할 이벤트 처리기를 나타내는 데 자주 사용됩니다.

이 속성은 DelegateType 만들 대리자의 형식을 지정합니다. 이 속성은 TargetObject 이벤트 처리기 메서드를 포함하는 개체를 나타냅니다. 이 속성은 MethodName 메서드 시그니처가 대리자의 메서드 서명과 일치하는 이벤트 처리기 메서드의 이름을 나타냅니다.

C#에서 대리자 생성 식은 일반적으로 다음과 같은 형식 new EventHandler(this.HandleEventMethod)입니다. Visual Basic에서 대리자 만들기 식은 일반적으로 다음과 같은 형식 AddressOf Me.HandleEventMethod입니다.

생성자

Name Description
CodeDelegateCreateExpression()

CodeDelegateCreateExpression 클래스의 새 인스턴스를 초기화합니다.

CodeDelegateCreateExpression(CodeTypeReference, CodeExpression, String)

CodeDelegateCreateExpression 클래스의 새 인스턴스를 초기화합니다.

속성

Name Description
DelegateType

대리자의 데이터 형식을 가져오거나 설정합니다.

MethodName

이벤트 처리기 메서드의 이름을 가져오거나 설정합니다.

TargetObject

이벤트 처리기 메서드를 포함하는 개체를 가져오거나 설정합니다.

UserData

현재 개체에 대한 사용자 정의 데이터를 가져옵니다.

(다음에서 상속됨 CodeObject)

메서드

Name Description
Equals(Object)

지정된 개체가 현재 개체와 같은지 여부를 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 사용됩니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

적용 대상