Delegate.CreateDelegate Yöntem

Tanım

Belirtilen türde bir temsilci oluşturur.

Aşırı Yüklemeler

Name Description
CreateDelegate(Type, Object, String, Boolean, Boolean)

Belirtilen sınıf örneğinde çağrılacak belirtilen örnek yöntemini temsil eden belirtilen türde bir temsilci oluşturur; belirtilen büyük/küçük harf duyarlılığı ve bağlanma hatasında belirtilen davranış.

CreateDelegate(Type, Type, String, Boolean)

Belirtilen büyük/küçük harf duyarlılığı ile belirtilen sınıfın belirtilen statik yöntemini temsil eden belirtilen türde bir temsilci oluşturur.

CreateDelegate(Type, Object, String, Boolean)

Belirtilen büyük/küçük harf duyarlılığıyla belirtilen sınıf örneğinde çağrılacak belirtilen örnek yöntemini temsil eden belirtilen türde bir temsilci oluşturur.

CreateDelegate(Type, Object, MethodInfo, Boolean)

Belirtilen statik veya örnek yöntemini temsil eden, belirtilen ilk bağımsız değişken ve bağlama hatasında belirtilen davranışla belirtilen türde bir temsilci oluşturur.

CreateDelegate(Type, Type, String, Boolean, Boolean)

Belirtilen sınıfın belirtilen statik yöntemini temsil eden belirtilen türde, belirtilen büyük/küçük harf duyarlılığı ve bağlama hatasında belirtilen davranış ile bir temsilci oluşturur.

CreateDelegate(Type, MethodInfo, Boolean)

Belirtilen statik yöntemi temsil etmek için belirtilen türün bir temsilcisini oluşturur ve bağlanma hatasında belirtilen davranış gösterilir.

CreateDelegate(Type, Object, String)

Belirtilen sınıf örneğinde çağrılacak belirtilen örnek yöntemini temsil eden belirtilen türde bir temsilci oluşturur.

CreateDelegate(Type, Object, MethodInfo)

Belirtilen ilk bağımsız değişkenle belirtilen statik veya örnek yöntemini temsil eden belirtilen türde bir temsilci oluşturur.

CreateDelegate(Type, MethodInfo)

Belirtilen yöntemi temsil etmek için belirtilen türde bir temsilci oluşturur.

CreateDelegate(Type, Type, String)

Belirtilen sınıfın belirtilen statik yöntemini temsil eden belirtilen türde bir temsilci oluşturur.

CreateDelegate(Type, Object, String, Boolean, Boolean)

Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs

Belirtilen sınıf örneğinde çağrılacak belirtilen örnek yöntemini temsil eden belirtilen türde bir temsilci oluşturur; belirtilen büyük/küçük harf duyarlılığı ve bağlanma hatasında belirtilen davranış.

public:
 static Delegate ^ CreateDelegate(Type ^ type, System::Object ^ target, System::String ^ method, bool ignoreCase, bool throwOnBindFailure);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The target method might be removed")]
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);
public static Delegate? CreateDelegate(Type type, object target, string method, bool ignoreCase, bool throwOnBindFailure);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The target method might be removed")>]
static member CreateDelegate : Type * obj * string * bool * bool -> Delegate
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

Parametreler

type
Type

Type Oluşturulacak temsilci.

target
Object

Üzerinde çağrılan method sınıf örneği.

method
String

Temsilcinin temsil etmek üzere olduğu örnek yönteminin adı.

ignoreCase
Boolean

Yöntemin adı karşılaştırılırken büyük/küçük harf yoksayılıp yoksayılmayacağını gösteren Boole değeri.

throwOnBindFailure
Boolean

true bağlanamıyorsa method bir özel durum oluşturur; aksi takdirde , false.

Döndürülenler

Belirtilen sınıf örneğinde çağrılacak belirtilen örnek yöntemini temsil eden belirtilen türde bir temsilci.

Öznitelikler

Özel durumlar

type, null'e eşittir.

-veya-

target, null'e eşittir.

-veya-

method, null'e eşittir.

type devralmıyor MulticastDelegate.

-veya-

type bir RuntimeTypedeğildir.

-veya-

method bir örnek yöntemi değildir.

-veya-

method bağlanamıyor, örneğin bulunamadığı ve throwOnBindFailure olduğu trueiçin.

Invoke yöntemi type bulunamadı.

Çağıranın erişimi methodiçin gerekli izinlere sahip değil.

Açıklamalar

Bu yöntem yalnızca örnek yöntemleri için temsilciler oluşturur. Örnek yöntemi, sınıfın bir örneğiyle ilişkilendirilmiş bir yöntemdir; statik yöntem, sınıfın kendisiyle ilişkili bir yöntemdir.

Ayrıca bkz.

Şunlara uygulanır

CreateDelegate(Type, Type, String, Boolean)

Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs

Belirtilen büyük/küçük harf duyarlılığı ile belirtilen sınıfın belirtilen statik yöntemini temsil eden belirtilen türde bir temsilci oluşturur.

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);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The target method might be removed")]
public static Delegate CreateDelegate(Type type, Type target, string method, bool ignoreCase);
static member CreateDelegate : Type * Type * string * bool -> Delegate
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The target method might be removed")>]
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

Parametreler

type
Type

Type Oluşturulacak temsilci.

target
Type

Type uygulayan sınıfını temsil edenmethod.

method
String

Temsilcinin temsil etmek üzere olduğu statik yöntemin adı.

ignoreCase
Boolean

Yöntemin adı karşılaştırılırken büyük/küçük harf yoksayılıp yoksayılmayacağını gösteren Boole değeri.

Döndürülenler

Belirtilen sınıfın belirtilen statik yöntemini temsil eden belirtilen türün temsilcisi.

Öznitelikler

Özel durumlar

type, null'e eşittir.

-veya-

target, null'e eşittir.

-veya-

method, null'e eşittir.

type devralmıyor MulticastDelegate.

-veya-

type bir RuntimeTypedeğildir.

-veya-

target bir RuntimeTypedeğildir.

-veya-

target açık bir genel türdür. Yani, özelliği ContainsGenericParameters şeklindedir true.

-veya-

method bir static yöntemi değildir (Visual Basic'de Shared yöntemi).

-veya-

method bağlanamıyor, örneğin bulunamadığından.

Invoke yöntemi type bulunamadı.

Çağıranın erişimi methodiçin gerekli izinlere sahip değil.

Açıklamalar

Bu yöntem yalnızca statik yöntemler için temsilciler oluşturur. Örnek yöntemi, sınıfın bir örneğiyle ilişkilendirilmiş bir yöntemdir; statik yöntem, sınıfın kendisiyle ilişkili bir yöntemdir.

Bu yöntem aşırı yüklemesi, için throwOnBindFailurebelirterek yöntem aşırı yüklemesini CreateDelegate(Type, Type, String, Boolean, Boolean) çağırmaya true eşdeğerdir.

Ayrıca bkz.

Şunlara uygulanır

CreateDelegate(Type, Object, String, Boolean)

Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs

Belirtilen büyük/küçük harf duyarlılığıyla belirtilen sınıf örneğinde çağrılacak belirtilen örnek yöntemini temsil eden belirtilen türde bir temsilci oluşturur.

public:
 static Delegate ^ CreateDelegate(Type ^ type, System::Object ^ target, System::String ^ method, bool ignoreCase);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The target method might be removed")]
public static Delegate CreateDelegate(Type type, object target, string method, bool ignoreCase);
public static Delegate CreateDelegate(Type type, object target, string method, bool ignoreCase);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The target method might be removed")>]
static member CreateDelegate : Type * obj * string * bool -> Delegate
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

Parametreler

type
Type

Type Oluşturulacak temsilci.

target
Object

Üzerinde çağrılan method sınıf örneği.

method
String

Temsilcinin temsil etmek üzere olduğu örnek yönteminin adı.

ignoreCase
Boolean

Yöntemin adı karşılaştırılırken büyük/küçük harf yoksayılıp yoksayılmayacağını gösteren Boole değeri.

Döndürülenler

Belirtilen sınıf örneğinde çağrılacak belirtilen örnek yöntemini temsil eden belirtilen türde bir temsilci.

Öznitelikler

Özel durumlar

type, null'e eşittir.

-veya-

target, null'e eşittir.

-veya-

method, null'e eşittir.

type devralmıyor MulticastDelegate.

-veya-

type bir RuntimeTypedeğildir.

-veya-

method bir örnek yöntemi değildir.

-veya-

method bağlanamıyor, örneğin bulunamadığından.

Invoke yöntemi type bulunamadı.

Çağıranın erişimi methodiçin gerekli izinlere sahip değil.

Açıklamalar

Bu yöntem yalnızca örnek yöntemleri için temsilciler oluşturur. Örnek yöntemi, sınıfın bir örneğiyle ilişkilendirilmiş bir yöntemdir; statik yöntem, sınıfın kendisiyle ilişkili bir yöntemdir.

Bu yöntem aşırı yüklemesi, için throwOnBindFailurebelirterek yöntem aşırı yüklemesini CreateDelegate(Type, Object, String, Boolean, Boolean) çağırmaya true eşdeğerdir.

Ayrıca bkz.

Şunlara uygulanır

CreateDelegate(Type, Object, MethodInfo, Boolean)

Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs

Belirtilen statik veya örnek yöntemini temsil eden, belirtilen ilk bağımsız değişken ve bağlama hatasında belirtilen davranışla belirtilen türde bir temsilci oluşturur.

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

Parametreler

type
Type

Type Oluşturulacak temsilci türünü temsil eden bir.

firstArgument
Object

Temsilcinin Object temsil ettiği yöntemin ilk bağımsız değişkeni olan. Örneğin yöntemleri, örnek türüyle uyumlu olmalıdır.

method
MethodInfo

Temsilcinin MethodInfo temsil etmek üzere olduğu statik veya örnek yöntemini açıklayan.

throwOnBindFailure
Boolean

true bağlanamıyorsa method bir özel durum oluşturur; aksi takdirde , false.

Döndürülenler

Belirtilen statik veya örnek yöntemini temsil eden belirtilen türde bir temsilci veya null ise throwOnBindFailurefalse ve temsilcisi ile methodbağlantı kurulamıyor.

Özel durumlar

type, null'e eşittir.

-veya-

method, null'e eşittir.

type devralmıyor MulticastDelegate.

-veya-

type bir RuntimeTypedeğildir.

-veya-

method bağlanamaz ve throwOnBindFailure şeklindedir true.

-veya-

method bir RuntimeMethodInfodeğildir.

Invoke yöntemi type bulunamadı.

Çağıranın erişimi methodiçin gerekli izinlere sahip değil.

Açıklamalar

Bu yöntem aşırı yüklemesi ve CreateDelegate(Type, Object, MethodInfo) her zaman bağlama hatasına neden olan yöntem aşırı yüklemesi, temsilci oluşturmanın en esnek yolunu sağlar. Bunları, ilk bağımsız değişkenle veya bağımsız değişken olmadan statik veya örnek yöntemleri için temsilciler oluşturmak için kullanabilirsiniz.

Not

İlk bağımsız değişken sağlamazsanız, daha iyi performans için yöntem aşırı yüklemesini CreateDelegate(Type, MethodInfo, Boolean) kullanın.

Daha fazla bilgi ve örnek için bkz. System.Delegate.CreateDelegate için ek API açıklamaları.

Ayrıca bkz.

Şunlara uygulanır

CreateDelegate(Type, Type, String, Boolean, Boolean)

Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs

Belirtilen sınıfın belirtilen statik yöntemini temsil eden belirtilen türde, belirtilen büyük/küçük harf duyarlılığı ve bağlama hatasında belirtilen davranış ile bir temsilci oluşturur.

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);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The target method might be removed")]
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
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The target method might be removed")>]
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

Parametreler

type
Type

Type Oluşturulacak temsilci.

target
Type

Type uygulayan sınıfını temsil edenmethod.

method
String

Temsilcinin temsil etmek üzere olduğu statik yöntemin adı.

ignoreCase
Boolean

Yöntemin adı karşılaştırılırken büyük/küçük harf yoksayılıp yoksayılmayacağını gösteren Boole değeri.

throwOnBindFailure
Boolean

true bağlanamıyorsa method bir özel durum oluşturur; aksi takdirde , false.

Döndürülenler

Belirtilen sınıfın belirtilen statik yöntemini temsil eden belirtilen türün temsilcisi.

Öznitelikler

Özel durumlar

type, null'e eşittir.

-veya-

target, null'e eşittir.

-veya-

method, null'e eşittir.

type devralmıyor MulticastDelegate.

-veya-

type bir RuntimeTypedeğildir.

-veya-

target bir RuntimeTypedeğildir.

-veya-

target açık bir genel türdür. Yani, özelliği ContainsGenericParameters şeklindedir true.

-veya-

method bir static yöntemi değildir (Visual Basic'de Shared yöntemi).

-veya-

method bağlanamıyor, örneğin bulunamadığı ve throwOnBindFailure olduğu trueiçin.

Invoke yöntemi type bulunamadı.

Çağıranın erişimi methodiçin gerekli izinlere sahip değil.

Açıklamalar

Bu yöntem yalnızca statik yöntemler için temsilciler oluşturur. Örnek yöntemi, sınıfın bir örneğiyle ilişkilendirilmiş bir yöntemdir; statik yöntem, sınıfın kendisiyle ilişkili bir yöntemdir.

Ayrıca bkz.

Şunlara uygulanır

CreateDelegate(Type, MethodInfo, Boolean)

Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs
Kaynak:
Delegate.CoreCLR.cs

Belirtilen statik yöntemi temsil etmek için belirtilen türün bir temsilcisini oluşturur ve bağlanma hatasında belirtilen davranış gösterilir.

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

Parametreler

type
Type

Type Oluşturulacak temsilci.

method
MethodInfo

Temsilcinin MethodInfo temsil etmek üzere olduğu statik veya örnek yöntemini açıklayan.

throwOnBindFailure
Boolean

true bağlanamıyorsa method bir özel durum oluşturur; aksi takdirde , false.

Döndürülenler

Belirtilen statik yöntemi temsil etmek için belirtilen türün temsilcisi.

Özel durumlar

type, null'e eşittir.

-veya-

method, null'e eşittir.

type devralmıyor MulticastDelegate.

-veya-

type bir RuntimeTypedeğildir.

-veya-

method bağlanamaz ve throwOnBindFailure şeklindedir true.

-veya-

method bir RuntimeMethodInfodeğildir.

Invoke yöntemi type bulunamadı.

Çağıranın erişimi methodiçin gerekli izinlere sahip değil.

Açıklamalar

Bu yöntem aşırı yüklemesi, açık statik yöntem temsilcileri ve açık örnek yöntemi temsilcileri, yani örnek yöntemlerinin gizli ilk bağımsız değişkenini kullanıma sunan temsilciler oluşturabilir. Ayrıntılı bir açıklama için, örnek veya statik yöntemler için açık veya kapalı temsilcilerin tüm birleşimlerini oluşturmanıza olanak tanıyan daha genel CreateDelegate(Type, Object, MethodInfo, Boolean) yöntem aşırı yüklemesine bakın.

Not

Bu durumda biraz daha hızlı olduğundan, temsilci ilk bağımsız değişkeni üzerinden kapatılmadığında bu yöntem aşırı yüklemesi kullanılmalıdır.

Örnekler için bkz. System.Delegate.CreateDelegate için ek API açıklamaları.

Ayrıca bkz.

Şunlara uygulanır

CreateDelegate(Type, Object, String)

Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs

Belirtilen sınıf örneğinde çağrılacak belirtilen örnek yöntemini temsil eden belirtilen türde bir temsilci oluşturur.

public:
 static Delegate ^ CreateDelegate(Type ^ type, System::Object ^ target, System::String ^ method);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The target method might be removed")]
public static Delegate CreateDelegate(Type type, object target, string method);
public static Delegate CreateDelegate(Type type, object target, string method);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The target method might be removed")>]
static member CreateDelegate : Type * obj * string -> Delegate
static member CreateDelegate : Type * obj * string -> Delegate
Public Shared Function CreateDelegate (type As Type, target As Object, method As String) As Delegate

Parametreler

type
Type

Type Oluşturulacak temsilci.

target
Object

Üzerinde çağrılan method sınıf örneği.

method
String

Temsilcinin temsil etmek üzere olduğu örnek yönteminin adı.

Döndürülenler

Belirtilen sınıf örneğinde çağrılacak belirtilen örnek yöntemini temsil eden belirtilen türde bir temsilci.

Öznitelikler

Özel durumlar

type, null'e eşittir.

-veya-

target, null'e eşittir.

-veya-

method, null'e eşittir.

type devralmıyor MulticastDelegate.

-veya-

type bir RuntimeTypedeğildir.

-veya-

method bir örnek yöntemi değildir.

-veya-

method bağlanamıyor, örneğin bulunamadığından.

Invoke yöntemi type bulunamadı.

Çağıranın erişimi methodiçin gerekli izinlere sahip değil.

Açıklamalar

Bu yöntem yalnızca örnek yöntemleri için temsilciler oluşturur. Örnek yöntemi, sınıfın bir örneğiyle ilişkilendirilmiş bir yöntemdir; statik yöntem, sınıfın kendisiyle ilişkili bir yöntemdir.

Bu yöntem aşırı yüklemesi, için ignoreCase ve truethrowOnBindFailuredeğerini belirterek false yöntem aşırı yüklemesini CreateDelegate(Type, Object, String, Boolean, Boolean) çağırmaya eşdeğerdir.

Ayrıca bkz.

Şunlara uygulanır

CreateDelegate(Type, Object, MethodInfo)

Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs

Belirtilen ilk bağımsız değişkenle belirtilen statik veya örnek yöntemini temsil eden belirtilen türde bir temsilci oluşturur.

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

Parametreler

type
Type

Type Oluşturulacak temsilci.

firstArgument
Object

Temsilcinin bağlı olduğu nesne veya methodstatic olarak işlemek için null (Visual Basic'de Shared).

method
MethodInfo

Temsilcinin MethodInfo temsil etmek üzere olduğu statik veya örnek yöntemini açıklayan.

Döndürülenler

Belirtilen statik veya örnek yöntemini temsil eden belirtilen türün temsilcisi.

Özel durumlar

type, null'e eşittir.

-veya-

method, null'e eşittir.

type devralmıyor MulticastDelegate.

-veya-

type bir RuntimeTypedeğildir.

-veya-

method bağlanamıyor.

-veya-

method bir RuntimeMethodInfodeğildir.

Invoke yöntemi type bulunamadı.

Çağıranın erişimi methodiçin gerekli izinlere sahip değil.

Açıklamalar

Bu yöntem aşırı yüklemesini çağırmak, yöntem aşırı yüklemesini çağırmaya CreateDelegate(Type, Object, MethodInfo, Boolean) ve için throwOnBindFailurebelirtmeye true eşdeğerdir. Bu iki aşırı yükleme, temsilci oluşturmanın en esnek yolunu sağlar. Bunları kullanarak statik veya örnek yöntemleri için temsilciler oluşturabilir ve isteğe bağlı olarak ilk bağımsız değişkeni belirtebilirsiniz.

Not

İlk bağımsız değişken sağlamazsanız, daha iyi performans için yöntem aşırı yüklemesini CreateDelegate(Type, MethodInfo) kullanın.

Bu API hakkında daha fazla bilgi için bkz. System.Delegate.CreateDelegate için ek API açıklamaları.

Ayrıca bkz.

Şunlara uygulanır

CreateDelegate(Type, MethodInfo)

Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs

Belirtilen yöntemi temsil etmek için belirtilen türde bir temsilci oluşturur.

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

Parametreler

type
Type

Type Oluşturulacak temsilci.

method
MethodInfo

Temsilcinin MethodInfo temsil etmek üzere olduğu statik veya örnek yöntemini açıklayan.

Döndürülenler

Belirtilen yöntemi temsil etmek için belirtilen türün temsilcisi.

Özel durumlar

type, null'e eşittir.

-veya-

method, null'e eşittir.

type devralmıyor MulticastDelegate.

-veya-

type bir RuntimeTypedeğildir.

-veya-

method bağlanamıyor.

-veya-

method bir RuntimeMethodInfodeğildir.

Invoke yöntemi type bulunamadı.

Çağıranın erişimi methodiçin gerekli izinlere sahip değil.

Açıklamalar

Bu aşırı yükleme statik yöntemler ve açık örnek yöntemi temsilcileri için temsilciler oluşturabilir; diğer bir deyişle, örnek yöntemlerinin gizli ilk bağımsız değişkenini açıkça sağlayan temsilciler. Ayrıntılı bir açıklama için, örneğin veya statik yöntemler için açık veya kapalı temsilcilerin tüm birleşimlerini oluşturmanıza ve isteğe bağlı olarak ilk bağımsız değişkeni belirtmenize olanak tanıyan daha genel CreateDelegate(Type, Object, MethodInfo) yöntem aşırı yüklemesine bakın.

Not

Bu durumda biraz daha hızlı olduğundan, temsilci ilk bağımsız değişkeni üzerinden kapatılmadığında bu yöntem aşırı yüklemesi kullanılmalıdır.

Bu API hakkında daha fazla bilgi için bkz. System.Delegate.CreateDelegate için ek API açıklamaları.

Ayrıca bkz.

Şunlara uygulanır

CreateDelegate(Type, Type, String)

Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs
Kaynak:
Delegate.cs

Belirtilen sınıfın belirtilen statik yöntemini temsil eden belirtilen türde bir temsilci oluşturur.

public:
 static Delegate ^ CreateDelegate(Type ^ type, Type ^ target, System::String ^ method);
public static Delegate CreateDelegate(Type type, Type target, string method);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The target method might be removed")]
public static Delegate CreateDelegate(Type type, Type target, string method);
static member CreateDelegate : Type * Type * string -> Delegate
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The target method might be removed")>]
static member CreateDelegate : Type * Type * string -> Delegate
Public Shared Function CreateDelegate (type As Type, target As Type, method As String) As Delegate

Parametreler

type
Type

Type Oluşturulacak temsilci.

target
Type

Type uygulayan sınıfını temsil edenmethod.

method
String

Temsilcinin temsil etmek üzere olduğu statik yöntemin adı.

Döndürülenler

Belirtilen sınıfın belirtilen statik yöntemini temsil eden belirtilen türün temsilcisi.

Öznitelikler

Özel durumlar

type, null'e eşittir.

-veya-

target, null'e eşittir.

-veya-

method, null'e eşittir.

type devralmıyor MulticastDelegate.

-veya-

type bir RuntimeTypedeğildir.

-veya-

target bir RuntimeTypedeğildir.

-veya-

target açık bir genel türdür. Yani, özelliği ContainsGenericParameters şeklindedir true.

-veya-

method bir static yöntemi değildir (Visual Basic'de Shared yöntemi).

Invoke yöntemi type bulunamadı.

Çağıranın erişimi methodiçin gerekli izinlere sahip değil.

Açıklamalar

Bu yöntem yalnızca statik yöntemler için temsilciler oluşturur. Örnek yöntemi, sınıfın bir örneğiyle ilişkilendirilmiş bir yöntemdir; statik yöntem, sınıfın kendisiyle ilişkili bir yöntemdir.

Bu yöntem aşırı yüklemesi, için ignoreCase ve truethrowOnBindFailuredeğerini belirterek false yöntem aşırı yüklemesini CreateDelegate(Type, Type, String, Boolean, Boolean) çağırmaya eşdeğerdir.

Ayrıca bkz.

Şunlara uygulanır