Delegate.CreateDelegate 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정된 형식의 대리자를 만듭니다.
오버로드
CreateDelegate(Type, Object, String, Boolean, Boolean) |
지정된 대/소문자 구분 및 바인딩 실패 시 지정된 동작을 사용하여 지정된 클래스 인스턴스에서 호출할 지정된 인스턴스 메서드를 나타내는 지정된 형식의 대리자를 만듭니다. |
CreateDelegate(Type, Type, String, Boolean) |
지정된 대/소문자 구분을 사용하여 지정된 클래스의 지정된 정적 메서드를 나타내는 지정된 형식의 대리자를 만듭니다. |
CreateDelegate(Type, Object, String, Boolean) |
지정된 대/소문자 구분을 사용하여 지정된 클래스 인스턴스에서 호출할 지정된 인스턴스 메서드를 나타내는 지정된 형식의 대리자를 만듭니다. |
CreateDelegate(Type, Object, MethodInfo, Boolean) |
지정된 첫 번째 인수와 바인딩 실패에 대한 지정된 동작을 사용하여 지정된 정적 또는 인스턴스 메서드를 나타내는 지정된 형식의 대리자를 만듭니다. |
CreateDelegate(Type, Type, String, Boolean, Boolean) |
지정된 대/소문자 구분 및 바인딩 실패 시 지정된 동작을 사용하여 지정된 클래스의 지정된 정적 메서드를 나타내는 지정된 형식의 대리자를 만듭니다. |
CreateDelegate(Type, MethodInfo, Boolean) |
지정된 정적 메서드를 나타내는 지정된 형식의 대리자를 만들고 바인딩 실패에 대해 지정된 동작을 만듭니다. |
CreateDelegate(Type, Object, String) |
지정된 클래스 인스턴스에서 호출할 지정된 인스턴스 메서드를 나타내는 지정된 형식의 대리자를 만듭니다. |
CreateDelegate(Type, Object, MethodInfo) |
지정된 첫 번째 인수를 사용하여 지정된 정적 또는 인스턴스 메서드를 나타내는 지정된 형식의 대리자를 만듭니다. |
CreateDelegate(Type, MethodInfo) |
지정된 메서드를 나타내는 지정된 형식의 대리자를 만듭니다. |
CreateDelegate(Type, Type, String) |
지정된 클래스의 지정된 정적 메서드를 나타내는 지정된 형식의 대리자를 만듭니다. |
CreateDelegate(Type, Object, String, Boolean, Boolean)
- Source:
- Delegate.CoreCLR.cs
- Source:
- Delegate.CoreCLR.cs
- Source:
- Delegate.CoreCLR.cs
지정된 대/소문자 구분 및 바인딩 실패 시 지정된 동작을 사용하여 지정된 클래스 인스턴스에서 호출할 지정된 인스턴스 메서드를 나타내는 지정된 형식의 대리자를 만듭니다.
public:
static Delegate ^ CreateDelegate(Type ^ type, System::Object ^ target, System::String ^ method, bool ignoreCase, bool throwOnBindFailure);
public static Delegate? CreateDelegate (Type type, object target, string method, bool ignoreCase, bool throwOnBindFailure);
public static Delegate CreateDelegate (Type type, object target, string method, bool ignoreCase, bool throwOnBindFailure);
static member CreateDelegate : Type * obj * string * bool * bool -> Delegate
Public Shared Function CreateDelegate (type As Type, target As Object, method As String, ignoreCase As Boolean, throwOnBindFailure As Boolean) As Delegate
매개 변수
- target
- Object
method
호출되는 클래스 인스턴스입니다.
- method
- String
대리자가 나타낼 인스턴스 메서드의 이름입니다.
- ignoreCase
- Boolean
메서드의 이름을 비교할 때 대/소문자를 무시할지 여부를 나타내는 부울입니다.
- throwOnBindFailure
- Boolean
method
바인딩할 수 없는 경우 예외를 throw하는 true
. 그렇지 않으면 false
.
반환
지정된 클래스 인스턴스에서 호출할 지정된 인스턴스 메서드를 나타내는 지정된 형식의 대리자입니다.
예외
type
MulticastDelegate상속하지 않습니다.
-또는-
type
RuntimeType
아닙니다. 리플렉션
-또는-
method
인스턴스 메서드가 아닙니다.
-또는-
예를 들어 method
찾을 수 없고 throwOnBindFailure
true
때문에 바인딩할 수 없습니다.
type
Invoke
메서드를 찾을 수 없습니다.
호출자에게 method
액세스하는 데 필요한 권한이 없습니다.
설명
이 메서드는 인스턴스 메서드에 대해서만 대리자를 만듭니다. 인스턴스 메서드는 클래스의 인스턴스와 연결된 메서드입니다. 정적 메서드는 클래스 자체와 연결된 메서드입니다.
추가 정보
적용 대상
CreateDelegate(Type, Type, String, Boolean)
- Source:
- Delegate.cs
- Source:
- Delegate.cs
- Source:
- Delegate.cs
지정된 대/소문자 구분을 사용하여 지정된 클래스의 지정된 정적 메서드를 나타내는 지정된 형식의 대리자를 만듭니다.
public:
static Delegate ^ CreateDelegate(Type ^ type, Type ^ target, System::String ^ method, bool ignoreCase);
public static Delegate CreateDelegate (Type type, Type target, string method, bool ignoreCase);
static member CreateDelegate : Type * Type * string * bool -> Delegate
Public Shared Function CreateDelegate (type As Type, target As Type, method As String, ignoreCase As Boolean) As Delegate
매개 변수
- method
- String
대리자가 나타낼 정적 메서드의 이름입니다.
- ignoreCase
- Boolean
메서드의 이름을 비교할 때 대/소문자를 무시할지 여부를 나타내는 부울입니다.
반환
지정된 클래스의 지정된 정적 메서드를 나타내는 지정된 형식의 대리자입니다.
예외
type
MulticastDelegate상속하지 않습니다.
-또는-
type
RuntimeType
아닙니다. 리플렉션
-또는-
target
RuntimeType
아닙니다.
-또는-
target
열린 제네릭 형식입니다. 즉, ContainsGenericParameters 속성은 true
.
-또는-
method
static
메서드(Visual Basic의Shared
메서드)가 아닙니다.
-또는-
예를 들어 method
찾을 수 없으므로 바인딩할 수 없습니다.
type
Invoke
메서드를 찾을 수 없습니다.
호출자에게 method
액세스하는 데 필요한 권한이 없습니다.
설명
이 메서드는 정적 메서드에 대해서만 대리자를 만듭니다. 인스턴스 메서드는 클래스의 인스턴스와 연결된 메서드입니다. 정적 메서드는 클래스 자체와 연결된 메서드입니다.
이 메서드 오버로드는 throwOnBindFailure
대한 true
지정하는 CreateDelegate(Type, Type, String, Boolean, Boolean) 메서드 오버로드를 호출하는 것과 같습니다.
추가 정보
적용 대상
CreateDelegate(Type, Object, String, Boolean)
- Source:
- Delegate.cs
- Source:
- Delegate.cs
- Source:
- Delegate.cs
지정된 대/소문자 구분을 사용하여 지정된 클래스 인스턴스에서 호출할 지정된 인스턴스 메서드를 나타내는 지정된 형식의 대리자를 만듭니다.
public:
static Delegate ^ CreateDelegate(Type ^ type, System::Object ^ target, System::String ^ method, bool ignoreCase);
public static Delegate CreateDelegate (Type type, object target, string method, bool ignoreCase);
static member CreateDelegate : Type * obj * string * bool -> Delegate
Public Shared Function CreateDelegate (type As Type, target As Object, method As String, ignoreCase As Boolean) As Delegate
매개 변수
- target
- Object
method
호출되는 클래스 인스턴스입니다.
- method
- String
대리자가 나타낼 인스턴스 메서드의 이름입니다.
- ignoreCase
- Boolean
메서드의 이름을 비교할 때 대/소문자를 무시할지 여부를 나타내는 부울입니다.
반환
지정된 클래스 인스턴스에서 호출할 지정된 인스턴스 메서드를 나타내는 지정된 형식의 대리자입니다.
예외
type
MulticastDelegate상속하지 않습니다.
-또는-
type
RuntimeType
아닙니다. 리플렉션
-또는-
method
인스턴스 메서드가 아닙니다.
-또는-
예를 들어 method
찾을 수 없으므로 바인딩할 수 없습니다.
type
Invoke
메서드를 찾을 수 없습니다.
호출자에게 method
액세스하는 데 필요한 권한이 없습니다.
설명
이 메서드는 인스턴스 메서드에 대해서만 대리자를 만듭니다. 인스턴스 메서드는 클래스의 인스턴스와 연결된 메서드입니다. 정적 메서드는 클래스 자체와 연결된 메서드입니다.
이 메서드 오버로드는 throwOnBindFailure
대한 true
지정하는 CreateDelegate(Type, Object, String, Boolean, Boolean) 메서드 오버로드를 호출하는 것과 같습니다.
추가 정보
적용 대상
CreateDelegate(Type, Object, MethodInfo, Boolean)
- Source:
- Delegate.CoreCLR.cs
- Source:
- Delegate.CoreCLR.cs
- Source:
- Delegate.CoreCLR.cs
지정된 첫 번째 인수와 바인딩 실패에 대한 지정된 동작을 사용하여 지정된 정적 또는 인스턴스 메서드를 나타내는 지정된 형식의 대리자를 만듭니다.
public:
static Delegate ^ CreateDelegate(Type ^ type, System::Object ^ firstArgument, System::Reflection::MethodInfo ^ method, bool throwOnBindFailure);
public static Delegate? CreateDelegate (Type type, object? firstArgument, System.Reflection.MethodInfo method, bool throwOnBindFailure);
public static Delegate CreateDelegate (Type type, object firstArgument, System.Reflection.MethodInfo method, bool throwOnBindFailure);
static member CreateDelegate : Type * obj * System.Reflection.MethodInfo * bool -> Delegate
Public Shared Function CreateDelegate (type As Type, firstArgument As Object, method As MethodInfo, throwOnBindFailure As Boolean) As Delegate
매개 변수
- method
- MethodInfo
대리자가 나타내는 정적 또는 인스턴스 메서드를 설명하는 MethodInfo.
- throwOnBindFailure
- Boolean
method
바인딩할 수 없는 경우 예외를 throw하는 true
. 그렇지 않으면 false
.
반환
지정된 정적 또는 인스턴스 메서드를 나타내는 지정된 형식의 대리자이거나, throwOnBindFailure
false
method
바인딩할 수 없는 경우 null
.
예외
type
MulticastDelegate상속하지 않습니다.
-또는-
type
RuntimeType
아닙니다. 리플렉션
-또는-
method
바인딩할 수 없으며 throwOnBindFailure
true
.
-또는-
method
RuntimeMethodInfo
아닙니다. 리플렉션
type
Invoke
메서드를 찾을 수 없습니다.
호출자에게 method
액세스하는 데 필요한 권한이 없습니다.
설명
이 메서드 오버로드 및 바인딩 실패에 항상 throw되는 CreateDelegate(Type, Object, MethodInfo) 메서드 오버로드는 대리자를 만드는 가장 유연한 방법을 제공합니다. 이를 사용하여 첫 번째 인수를 사용하거나 사용하지 않고 정적 또는 인스턴스 메서드에 대한 대리자를 만들 수 있습니다.
메모
첫 번째 인수를 제공하지 않으면 성능 향상을 위해 CreateDelegate(Type, MethodInfo, Boolean) 메서드 오버로드를 사용합니다.
자세한 내용 및 예제는 System.Delegate.CreateDelegate대한
추가 정보
적용 대상
CreateDelegate(Type, Type, String, Boolean, Boolean)
- Source:
- Delegate.CoreCLR.cs
- Source:
- Delegate.CoreCLR.cs
- Source:
- Delegate.CoreCLR.cs
지정된 대/소문자 구분 및 바인딩 실패 시 지정된 동작을 사용하여 지정된 클래스의 지정된 정적 메서드를 나타내는 지정된 형식의 대리자를 만듭니다.
public:
static Delegate ^ CreateDelegate(Type ^ type, Type ^ target, System::String ^ method, bool ignoreCase, bool throwOnBindFailure);
public static Delegate? CreateDelegate (Type type, Type target, string method, bool ignoreCase, bool throwOnBindFailure);
public static Delegate CreateDelegate (Type type, Type target, string method, bool ignoreCase, bool throwOnBindFailure);
static member CreateDelegate : Type * Type * string * bool * bool -> Delegate
Public Shared Function CreateDelegate (type As Type, target As Type, method As String, ignoreCase As Boolean, throwOnBindFailure As Boolean) As Delegate
매개 변수
- method
- String
대리자가 나타낼 정적 메서드의 이름입니다.
- ignoreCase
- Boolean
메서드의 이름을 비교할 때 대/소문자를 무시할지 여부를 나타내는 부울입니다.
- throwOnBindFailure
- Boolean
method
바인딩할 수 없는 경우 예외를 throw하는 true
. 그렇지 않으면 false
.
반환
지정된 클래스의 지정된 정적 메서드를 나타내는 지정된 형식의 대리자입니다.
예외
type
MulticastDelegate상속하지 않습니다.
-또는-
type
RuntimeType
아닙니다. 리플렉션
-또는-
target
RuntimeType
아닙니다.
-또는-
target
열린 제네릭 형식입니다. 즉, ContainsGenericParameters 속성은 true
.
-또는-
method
static
메서드(Visual Basic의Shared
메서드)가 아닙니다.
-또는-
예를 들어 method
찾을 수 없고 throwOnBindFailure
true
때문에 바인딩할 수 없습니다.
type
Invoke
메서드를 찾을 수 없습니다.
호출자에게 method
액세스하는 데 필요한 권한이 없습니다.
설명
이 메서드는 정적 메서드에 대해서만 대리자를 만듭니다. 인스턴스 메서드는 클래스의 인스턴스와 연결된 메서드입니다. 정적 메서드는 클래스 자체와 연결된 메서드입니다.
추가 정보
적용 대상
CreateDelegate(Type, MethodInfo, Boolean)
- Source:
- Delegate.CoreCLR.cs
- Source:
- Delegate.CoreCLR.cs
- Source:
- Delegate.CoreCLR.cs
지정된 정적 메서드를 나타내는 지정된 형식의 대리자를 만들고 바인딩 실패에 대해 지정된 동작을 만듭니다.
public:
static Delegate ^ CreateDelegate(Type ^ type, System::Reflection::MethodInfo ^ method, bool throwOnBindFailure);
public static Delegate? CreateDelegate (Type type, System.Reflection.MethodInfo method, bool throwOnBindFailure);
public static Delegate CreateDelegate (Type type, System.Reflection.MethodInfo method, bool throwOnBindFailure);
static member CreateDelegate : Type * System.Reflection.MethodInfo * bool -> Delegate
Public Shared Function CreateDelegate (type As Type, method As MethodInfo, throwOnBindFailure As Boolean) As Delegate
매개 변수
- method
- MethodInfo
대리자가 나타내는 정적 또는 인스턴스 메서드를 설명하는 MethodInfo.
- throwOnBindFailure
- Boolean
method
바인딩할 수 없는 경우 예외를 throw하는 true
. 그렇지 않으면 false
.
반환
지정된 정적 메서드를 나타내는 지정된 형식의 대리자입니다.
예외
type
MulticastDelegate상속하지 않습니다.
-또는-
type
RuntimeType
아닙니다. 리플렉션
-또는-
method
바인딩할 수 없으며 throwOnBindFailure
true
.
-또는-
method
RuntimeMethodInfo
아닙니다. 리플렉션
type
Invoke
메서드를 찾을 수 없습니다.
호출자에게 method
액세스하는 데 필요한 권한이 없습니다.
설명
이 메서드 오버로드는 열려 있는 정적 메서드 대리자를 만들고 인스턴스 메서드 대리자를 열 수 있습니다. 즉, 인스턴스 메서드의 숨겨진 첫 번째 인수를 노출하는 대리자입니다. 자세한 설명은 인스턴스 또는 정적 메서드에 대해 열려 있거나 닫힌 대리자의 모든 조합을 만들 수 있는 보다 일반적인 CreateDelegate(Type, Object, MethodInfo, Boolean) 메서드 오버로드를 참조하세요.
메모
대리자가 첫 번째 인수를 통해 닫혀 있지 않은 경우 이 메서드 오버로드를 사용해야 합니다. 이 경우 다소 빠르기 때문입니다.
예를 들어 System.Delegate.CreateDelegate대한
추가 정보
적용 대상
CreateDelegate(Type, Object, String)
- Source:
- Delegate.cs
- Source:
- Delegate.cs
- Source:
- Delegate.cs
지정된 클래스 인스턴스에서 호출할 지정된 인스턴스 메서드를 나타내는 지정된 형식의 대리자를 만듭니다.
public:
static Delegate ^ CreateDelegate(Type ^ type, System::Object ^ target, System::String ^ method);
public static Delegate CreateDelegate (Type type, object target, string method);
static member CreateDelegate : Type * obj * string -> Delegate
Public Shared Function CreateDelegate (type As Type, target As Object, method As String) As Delegate
매개 변수
- target
- Object
method
호출되는 클래스 인스턴스입니다.
- method
- String
대리자가 나타낼 인스턴스 메서드의 이름입니다.
반환
지정된 클래스 인스턴스에서 호출할 지정된 인스턴스 메서드를 나타내는 지정된 형식의 대리자입니다.
예외
type
MulticastDelegate상속하지 않습니다.
-또는-
type
RuntimeType
아닙니다. 리플렉션
-또는-
method
인스턴스 메서드가 아닙니다.
-또는-
예를 들어 method
찾을 수 없으므로 바인딩할 수 없습니다.
type
Invoke
메서드를 찾을 수 없습니다.
호출자에게 method
액세스하는 데 필요한 권한이 없습니다.
설명
이 메서드는 인스턴스 메서드에 대해서만 대리자를 만듭니다. 인스턴스 메서드는 클래스의 인스턴스와 연결된 메서드입니다. 정적 메서드는 클래스 자체와 연결된 메서드입니다.
이 메서드 오버로드는 CreateDelegate(Type, Object, String, Boolean, Boolean) 메서드 오버로드를 호출하고 throwOnBindFailure
ignoreCase
true
대한 false
지정하는 것과 같습니다.
추가 정보
적용 대상
CreateDelegate(Type, Object, MethodInfo)
- Source:
- Delegate.cs
- Source:
- Delegate.cs
- Source:
- Delegate.cs
지정된 첫 번째 인수를 사용하여 지정된 정적 또는 인스턴스 메서드를 나타내는 지정된 형식의 대리자를 만듭니다.
public:
static Delegate ^ CreateDelegate(Type ^ type, System::Object ^ firstArgument, System::Reflection::MethodInfo ^ method);
public static Delegate CreateDelegate (Type type, object? firstArgument, System.Reflection.MethodInfo method);
public static Delegate CreateDelegate (Type type, object firstArgument, System.Reflection.MethodInfo method);
static member CreateDelegate : Type * obj * System.Reflection.MethodInfo -> Delegate
Public Shared Function CreateDelegate (type As Type, firstArgument As Object, method As MethodInfo) As Delegate
매개 변수
- firstArgument
- Object
대리자가 바인딩된 개체이거나 method
static
(Visual Basic에서는Shared
)로 처리할 null
.
- method
- MethodInfo
대리자가 나타내는 정적 또는 인스턴스 메서드를 설명하는 MethodInfo.
반환
지정된 정적 또는 인스턴스 메서드를 나타내는 지정된 형식의 대리자입니다.
예외
type
MulticastDelegate상속하지 않습니다.
-또는-
type
RuntimeType
아닙니다. 리플렉션
-또는-
method
바인딩할 수 없습니다.
-또는-
method
RuntimeMethodInfo
아닙니다. 리플렉션
type
Invoke
메서드를 찾을 수 없습니다.
호출자에게 method
액세스하는 데 필요한 권한이 없습니다.
설명
이 메서드 오버로드를 호출하는 것은 CreateDelegate(Type, Object, MethodInfo, Boolean) 메서드 오버로드를 호출하고 throwOnBindFailure
대한 true
지정하는 것과 같습니다. 이러한 두 오버로드는 대리자를 만드는 가장 유연한 방법을 제공합니다. 이를 사용하여 정적 또는 인스턴스 메서드에 대한 대리자를 만들고 필요에 따라 첫 번째 인수를 지정할 수 있습니다.
메모
첫 번째 인수를 제공하지 않으면 성능 향상을 위해 CreateDelegate(Type, MethodInfo) 메서드 오버로드를 사용합니다.
이 API에 대한 자세한 내용은 System.Delegate.CreateDelegate대한
추가 정보
적용 대상
CreateDelegate(Type, MethodInfo)
- Source:
- Delegate.cs
- Source:
- Delegate.cs
- Source:
- Delegate.cs
지정된 메서드를 나타내는 지정된 형식의 대리자를 만듭니다.
public:
static Delegate ^ CreateDelegate(Type ^ type, System::Reflection::MethodInfo ^ method);
public static Delegate CreateDelegate (Type type, System.Reflection.MethodInfo method);
static member CreateDelegate : Type * System.Reflection.MethodInfo -> Delegate
Public Shared Function CreateDelegate (type As Type, method As MethodInfo) As Delegate
매개 변수
- method
- MethodInfo
대리자가 나타내는 정적 또는 인스턴스 메서드를 설명하는 MethodInfo.
반환
지정된 메서드를 나타내는 지정된 형식의 대리자입니다.
예외
type
MulticastDelegate상속하지 않습니다.
-또는-
type
RuntimeType
아닙니다. 리플렉션
-또는-
method
바인딩할 수 없습니다.
-또는-
method
RuntimeMethodInfo
아닙니다. 리플렉션
type
Invoke
메서드를 찾을 수 없습니다.
호출자에게 method
액세스하는 데 필요한 권한이 없습니다.
설명
이 오버로드는 정적 메서드에 대한 대리자를 만들고 인스턴스 메서드 대리자를 열 수 있습니다. 즉, 인스턴스 메서드의 숨겨진 첫 번째 인수를 명시적으로 제공하는 대리자입니다. 자세한 설명은 인스턴스 또는 정적 메서드에 대해 열려 있거나 닫힌 대리자의 모든 조합을 만들고 선택적으로 첫 번째 인수를 지정할 수 있는 보다 일반적인 CreateDelegate(Type, Object, MethodInfo) 메서드 오버로드를 참조하세요.
메모
대리자가 첫 번째 인수를 통해 닫혀 있지 않은 경우 이 메서드 오버로드를 사용해야 합니다. 이 경우 다소 빠르기 때문입니다.
이 API에 대한 자세한 내용은 System.Delegate.CreateDelegate대한
추가 정보
적용 대상
CreateDelegate(Type, Type, String)
- Source:
- Delegate.cs
- Source:
- Delegate.cs
- Source:
- Delegate.cs
지정된 클래스의 지정된 정적 메서드를 나타내는 지정된 형식의 대리자를 만듭니다.
public:
static Delegate ^ CreateDelegate(Type ^ type, Type ^ target, System::String ^ method);
public static Delegate CreateDelegate (Type type, Type target, string method);
static member CreateDelegate : Type * Type * string -> Delegate
Public Shared Function CreateDelegate (type As Type, target As Type, method As String) As Delegate
매개 변수
- method
- String
대리자가 나타낼 정적 메서드의 이름입니다.
반환
지정된 클래스의 지정된 정적 메서드를 나타내는 지정된 형식의 대리자입니다.
예외
type
MulticastDelegate상속하지 않습니다.
-또는-
type
RuntimeType
아닙니다. 리플렉션
-또는-
target
RuntimeType
아닙니다.
-또는-
target
열린 제네릭 형식입니다. 즉, ContainsGenericParameters 속성은 true
.
-또는-
method
static
메서드(Visual Basic의Shared
메서드)가 아닙니다.
type
Invoke
메서드를 찾을 수 없습니다.
호출자에게 method
액세스하는 데 필요한 권한이 없습니다.
설명
이 메서드는 정적 메서드에 대해서만 대리자를 만듭니다. 인스턴스 메서드는 클래스의 인스턴스와 연결된 메서드입니다. 정적 메서드는 클래스 자체와 연결된 메서드입니다.
이 메서드 오버로드는 CreateDelegate(Type, Type, String, Boolean, Boolean) 메서드 오버로드를 호출하고 throwOnBindFailure
ignoreCase
true
대한 false
지정하는 것과 같습니다.
추가 정보
적용 대상
.NET