Partage via


Delegate.CreateDelegate Méthode

Définition

Crée un délégué du type spécifié.

Surcharges

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

Crée un délégué du type spécifié qui représente la méthode d’instance spécifiée à appeler sur l’instance de classe spécifiée, avec la sensibilité de la casse spécifiée et le comportement spécifié en cas d’échec de liaison.

CreateDelegate(Type, Type, String, Boolean)

Crée un délégué du type spécifié qui représente la méthode statique spécifiée de la classe spécifiée, avec la casse spécifiée.

CreateDelegate(Type, Object, String, Boolean)

Crée un délégué du type spécifié qui représente la méthode d’instance spécifiée à appeler sur l’instance de classe spécifiée avec la casse spécifiée.

CreateDelegate(Type, Object, MethodInfo, Boolean)

Crée un délégué du type spécifié qui représente la méthode statique ou d’instance spécifiée, avec le premier argument spécifié et le comportement spécifié en cas de défaillance de liaison.

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

Crée un délégué du type spécifié qui représente la méthode statique spécifiée de la classe spécifiée, avec la sensibilité de la casse spécifiée et le comportement spécifié en cas d’échec de liaison.

CreateDelegate(Type, MethodInfo, Boolean)

Crée un délégué du type spécifié pour représenter la méthode statique spécifiée, avec le comportement spécifié en cas de défaillance de liaison.

CreateDelegate(Type, Object, String)

Crée un délégué du type spécifié qui représente la méthode d’instance spécifiée à appeler sur l’instance de classe spécifiée.

CreateDelegate(Type, Object, MethodInfo)

Crée un délégué du type spécifié qui représente la méthode statique ou d’instance spécifiée, avec le premier argument spécifié.

CreateDelegate(Type, MethodInfo)

Crée un délégué du type spécifié pour représenter la méthode spécifiée.

CreateDelegate(Type, Type, String)

Crée un délégué du type spécifié qui représente la méthode statique spécifiée de la classe spécifiée.

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

Source:
Delegate.CoreCLR.cs
Source:
Delegate.CoreCLR.cs
Source:
Delegate.CoreCLR.cs

Crée un délégué du type spécifié qui représente la méthode d’instance spécifiée à appeler sur l’instance de classe spécifiée, avec la sensibilité de la casse spécifiée et le comportement spécifié en cas d’échec de liaison.

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

Paramètres

type
Type

Type de délégué à créer.

target
Object

Instance de classe sur laquelle method est appelée.

method
String

Nom de la méthode d’instance que le délégué doit représenter.

ignoreCase
Boolean

Valeur booléenne indiquant s’il faut ignorer le cas lors de la comparaison du nom de la méthode.

throwOnBindFailure
Boolean

true lever une exception si method ne peut pas être liée ; sinon, false.

Retours

Délégué du type spécifié qui représente la méthode d’instance spécifiée à appeler sur l’instance de classe spécifiée.

Exceptions

type est null.

-ou-

target est null.

-ou-

method est null.

type n’hérite pas MulticastDelegate.

-ou-

type n’est pas un RuntimeType. Consultez types d’exécution dans lede réflexion.

-ou-

method n’est pas une méthode d’instance.

-ou-

method ne peut pas être lié, par exemple parce qu’il est introuvable, et throwOnBindFailure est true.

La méthode Invoke de type est introuvable.

L’appelant n’a pas les autorisations nécessaires pour accéder à method.

Remarques

Cette méthode crée uniquement des délégués pour les méthodes d’instance. Une méthode d’instance est une méthode associée à une instance d’une classe ; une méthode statique est une méthode associée à la classe elle-même.

Voir aussi

S’applique à

CreateDelegate(Type, Type, String, Boolean)

Source:
Delegate.cs
Source:
Delegate.cs
Source:
Delegate.cs

Crée un délégué du type spécifié qui représente la méthode statique spécifiée de la classe spécifiée, avec la casse spécifiée.

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

Paramètres

type
Type

Type de délégué à créer.

target
Type

Type représentant la classe qui implémente method.

method
String

Nom de la méthode statique que le délégué doit représenter.

ignoreCase
Boolean

Valeur booléenne indiquant s’il faut ignorer le cas lors de la comparaison du nom de la méthode.

Retours

Délégué du type spécifié qui représente la méthode statique spécifiée de la classe spécifiée.

Exceptions

type est null.

-ou-

target est null.

-ou-

method est null.

type n’hérite pas MulticastDelegate.

-ou-

type n’est pas un RuntimeType. Consultez types d’exécution dans lede réflexion.

-ou-

target n’est pas un RuntimeType.

-ou-

target est un type générique ouvert. Autrement dit, sa propriété ContainsGenericParameters est true.

-ou-

method n’est pas une méthode static (méthodeShared en Visual Basic).

-ou-

method ne peut pas être liée, par exemple parce qu’elle est introuvable.

La méthode Invoke de type est introuvable.

L’appelant n’a pas les autorisations nécessaires pour accéder à method.

Remarques

Cette méthode crée des délégués pour les méthodes statiques uniquement. Une méthode d’instance est une méthode associée à une instance d’une classe ; une méthode statique est une méthode associée à la classe elle-même.

Cette surcharge de méthode équivaut à appeler la surcharge de méthode CreateDelegate(Type, Type, String, Boolean, Boolean), en spécifiant true pour throwOnBindFailure.

Voir aussi

S’applique à

CreateDelegate(Type, Object, String, Boolean)

Source:
Delegate.cs
Source:
Delegate.cs
Source:
Delegate.cs

Crée un délégué du type spécifié qui représente la méthode d’instance spécifiée à appeler sur l’instance de classe spécifiée avec la casse spécifiée.

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

Paramètres

type
Type

Type de délégué à créer.

target
Object

Instance de classe sur laquelle method est appelée.

method
String

Nom de la méthode d’instance que le délégué doit représenter.

ignoreCase
Boolean

Valeur booléenne indiquant s’il faut ignorer le cas lors de la comparaison du nom de la méthode.

Retours

Délégué du type spécifié qui représente la méthode d’instance spécifiée à appeler sur l’instance de classe spécifiée.

Exceptions

type est null.

-ou-

target est null.

-ou-

method est null.

type n’hérite pas MulticastDelegate.

-ou-

type n’est pas un RuntimeType. Consultez types d’exécution dans lede réflexion.

-ou-

method n’est pas une méthode d’instance.

-ou-

method ne peut pas être liée, par exemple parce qu’elle est introuvable.

La méthode Invoke de type est introuvable.

L’appelant n’a pas les autorisations nécessaires pour accéder à method.

Remarques

Cette méthode crée uniquement des délégués pour les méthodes d’instance. Une méthode d’instance est une méthode associée à une instance d’une classe ; une méthode statique est une méthode associée à la classe elle-même.

Cette surcharge de méthode équivaut à appeler la surcharge de méthode CreateDelegate(Type, Object, String, Boolean, Boolean), en spécifiant true pour throwOnBindFailure.

Voir aussi

S’applique à

CreateDelegate(Type, Object, MethodInfo, Boolean)

Source:
Delegate.CoreCLR.cs
Source:
Delegate.CoreCLR.cs
Source:
Delegate.CoreCLR.cs

Crée un délégué du type spécifié qui représente la méthode statique ou d’instance spécifiée, avec le premier argument spécifié et le comportement spécifié en cas de défaillance de liaison.

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

Paramètres

type
Type

Un Type représentant le type de délégué à créer.

firstArgument
Object

Un Object qui est le premier argument de la méthode que représente le délégué. Par exemple, les méthodes doivent être compatibles avec le type d’instance.

method
MethodInfo

La MethodInfo décrivant la méthode statique ou d’instance que le délégué doit représenter.

throwOnBindFailure
Boolean

true lever une exception si method ne peut pas être liée ; sinon, false.

Retours

Délégué du type spécifié qui représente la méthode statique ou d’instance spécifiée, ou null si throwOnBindFailure est false et que le délégué ne peut pas être lié à method.

Exceptions

type est null.

-ou-

method est null.

type n’hérite pas MulticastDelegate.

-ou-

type n’est pas un RuntimeType. Consultez types d’exécution dans lede réflexion.

-ou-

method ne peut pas être lié et throwOnBindFailure est true.

-ou-

method n’est pas un RuntimeMethodInfo. Consultez types d’exécution dans lede réflexion.

La méthode Invoke de type est introuvable.

L’appelant n’a pas les autorisations nécessaires pour accéder à method.

Remarques

Cette surcharge de méthode et la surcharge de méthode CreateDelegate(Type, Object, MethodInfo), qui lève toujours en cas de défaillance de liaison, fournissent le moyen le plus flexible de créer des délégués. Vous pouvez les utiliser pour créer des délégués pour les méthodes statiques ou d’instance, avec ou sans premier argument.

Note

Si vous ne fournissez pas de premier argument, utilisez la surcharge de méthode CreateDelegate(Type, MethodInfo, Boolean) pour de meilleures performances.

Pour plus d’informations et d’exemples, consultez remarques sur l’API supplémentaire pour System.Delegate.CreateDelegate.

Voir aussi

S’applique à

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

Source:
Delegate.CoreCLR.cs
Source:
Delegate.CoreCLR.cs
Source:
Delegate.CoreCLR.cs

Crée un délégué du type spécifié qui représente la méthode statique spécifiée de la classe spécifiée, avec la sensibilité de la casse spécifiée et le comportement spécifié en cas d’échec de liaison.

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

Paramètres

type
Type

Type de délégué à créer.

target
Type

Type représentant la classe qui implémente method.

method
String

Nom de la méthode statique que le délégué doit représenter.

ignoreCase
Boolean

Valeur booléenne indiquant s’il faut ignorer le cas lors de la comparaison du nom de la méthode.

throwOnBindFailure
Boolean

true lever une exception si method ne peut pas être liée ; sinon, false.

Retours

Délégué du type spécifié qui représente la méthode statique spécifiée de la classe spécifiée.

Exceptions

type est null.

-ou-

target est null.

-ou-

method est null.

type n’hérite pas MulticastDelegate.

-ou-

type n’est pas un RuntimeType. Consultez types d’exécution dans lede réflexion.

-ou-

target n’est pas un RuntimeType.

-ou-

target est un type générique ouvert. Autrement dit, sa propriété ContainsGenericParameters est true.

-ou-

method n’est pas une méthode static (méthodeShared en Visual Basic).

-ou-

method ne peut pas être lié, par exemple parce qu’il est introuvable, et throwOnBindFailure est true.

La méthode Invoke de type est introuvable.

L’appelant n’a pas les autorisations nécessaires pour accéder à method.

Remarques

Cette méthode crée des délégués pour les méthodes statiques uniquement. Une méthode d’instance est une méthode associée à une instance d’une classe ; une méthode statique est une méthode associée à la classe elle-même.

Voir aussi

S’applique à

CreateDelegate(Type, MethodInfo, Boolean)

Source:
Delegate.CoreCLR.cs
Source:
Delegate.CoreCLR.cs
Source:
Delegate.CoreCLR.cs

Crée un délégué du type spécifié pour représenter la méthode statique spécifiée, avec le comportement spécifié en cas de défaillance de liaison.

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

Paramètres

type
Type

Type de délégué à créer.

method
MethodInfo

La MethodInfo décrivant la méthode statique ou d’instance que le délégué doit représenter.

throwOnBindFailure
Boolean

true lever une exception si method ne peut pas être liée ; sinon, false.

Retours

Délégué du type spécifié pour représenter la méthode statique spécifiée.

Exceptions

type est null.

-ou-

method est null.

type n’hérite pas MulticastDelegate.

-ou-

type n’est pas un RuntimeType. Consultez types d’exécution dans lede réflexion.

-ou-

method ne peut pas être lié et throwOnBindFailure est true.

-ou-

method n’est pas un RuntimeMethodInfo. Consultez types d’exécution dans lede réflexion.

La méthode Invoke de type est introuvable.

L’appelant n’a pas les autorisations nécessaires pour accéder à method.

Remarques

Cette surcharge de méthode peut créer des délégués de méthode statique ouverts et des délégués de méthode d’instance ouverts, c’est-à-dire des délégués qui exposent le premier argument masqué des méthodes d’instance. Pour obtenir une explication détaillée, consultez la surcharge de méthode CreateDelegate(Type, Object, MethodInfo, Boolean) plus générale, ce qui vous permet de créer toutes les combinaisons de délégués ouverts ou fermés pour des méthodes statiques ou d’instance.

Note

Cette surcharge de méthode doit être utilisée lorsque le délégué n’est pas fermé sur son premier argument, car il est un peu plus rapide dans ce cas.

Pour obtenir des exemples, consultez remarques sur l’API supplémentaire pour System.Delegate.CreateDelegate.

Voir aussi

S’applique à

CreateDelegate(Type, Object, String)

Source:
Delegate.cs
Source:
Delegate.cs
Source:
Delegate.cs

Crée un délégué du type spécifié qui représente la méthode d’instance spécifiée à appeler sur l’instance de classe spécifiée.

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

Paramètres

type
Type

Type de délégué à créer.

target
Object

Instance de classe sur laquelle method est appelée.

method
String

Nom de la méthode d’instance que le délégué doit représenter.

Retours

Délégué du type spécifié qui représente la méthode d’instance spécifiée à appeler sur l’instance de classe spécifiée.

Exceptions

type est null.

-ou-

target est null.

-ou-

method est null.

type n’hérite pas MulticastDelegate.

-ou-

type n’est pas un RuntimeType. Consultez types d’exécution dans lede réflexion.

-ou-

method n’est pas une méthode d’instance.

-ou-

method ne peut pas être liée, par exemple parce qu’elle est introuvable.

La méthode Invoke de type est introuvable.

L’appelant n’a pas les autorisations nécessaires pour accéder à method.

Remarques

Cette méthode crée uniquement des délégués pour les méthodes d’instance. Une méthode d’instance est une méthode associée à une instance d’une classe ; une méthode statique est une méthode associée à la classe elle-même.

Cette surcharge de méthode équivaut à appeler la surcharge de méthode CreateDelegate(Type, Object, String, Boolean, Boolean), en spécifiant false pour ignoreCase et true pour throwOnBindFailure.

Voir aussi

S’applique à

CreateDelegate(Type, Object, MethodInfo)

Source:
Delegate.cs
Source:
Delegate.cs
Source:
Delegate.cs

Crée un délégué du type spécifié qui représente la méthode statique ou d’instance spécifiée, avec le premier argument spécifié.

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

Paramètres

type
Type

Type de délégué à créer.

firstArgument
Object

Objet auquel le délégué est lié ou null traiter method comme static (Shared en Visual Basic).

method
MethodInfo

La MethodInfo décrivant la méthode statique ou d’instance que le délégué doit représenter.

Retours

Délégué du type spécifié qui représente la méthode statique ou d’instance spécifiée.

Exceptions

type est null.

-ou-

method est null.

type n’hérite pas MulticastDelegate.

-ou-

type n’est pas un RuntimeType. Consultez types d’exécution dans lede réflexion.

-ou-

method ne peut pas être lié.

-ou-

method n’est pas un RuntimeMethodInfo. Consultez types d’exécution dans lede réflexion.

La méthode Invoke de type est introuvable.

L’appelant n’a pas les autorisations nécessaires pour accéder à method.

Remarques

L’appel de cette surcharge de méthode équivaut à appeler la surcharge de méthode CreateDelegate(Type, Object, MethodInfo, Boolean) et à spécifier true pour throwOnBindFailure. Ces deux surcharges offrent le moyen le plus flexible de créer des délégués. Vous pouvez les utiliser pour créer des délégués pour les méthodes statiques ou d’instance, et éventuellement pour spécifier le premier argument.

Note

Si vous ne fournissez pas de premier argument, utilisez la surcharge de méthode CreateDelegate(Type, MethodInfo) pour de meilleures performances.

Pour plus d’informations sur cette API, consultez remarques d’API supplémentaires pour System.Delegate.CreateDelegate.

Voir aussi

S’applique à

CreateDelegate(Type, MethodInfo)

Source:
Delegate.cs
Source:
Delegate.cs
Source:
Delegate.cs

Crée un délégué du type spécifié pour représenter la méthode spécifiée.

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

Paramètres

type
Type

Type de délégué à créer.

method
MethodInfo

La MethodInfo décrivant la méthode statique ou d’instance que le délégué doit représenter.

Retours

Délégué du type spécifié pour représenter la méthode spécifiée.

Exceptions

type est null.

-ou-

method est null.

type n’hérite pas MulticastDelegate.

-ou-

type n’est pas un RuntimeType. Consultez types d’exécution dans lede réflexion.

-ou-

method ne peut pas être lié.

-ou-

method n’est pas un RuntimeMethodInfo. Consultez types d’exécution dans lede réflexion.

La méthode Invoke de type est introuvable.

L’appelant n’a pas les autorisations nécessaires pour accéder à method.

Remarques

Cette surcharge peut créer des délégués pour les méthodes statiques et ouvrir des délégués de méthode d’instance ; autrement dit, les délégués qui fournissent explicitement le premier argument masqué des méthodes d’instance. Pour obtenir une explication détaillée, consultez la surcharge de méthode CreateDelegate(Type, Object, MethodInfo) plus générale, ce qui vous permet de créer toutes les combinaisons de délégués ouverts ou fermés pour des méthodes statiques ou d’instance, et éventuellement pour spécifier un premier argument.

Note

Cette surcharge de méthode doit être utilisée lorsque le délégué n’est pas fermé sur son premier argument, car il est un peu plus rapide dans ce cas.

Pour plus d’informations sur cette API, consultez remarques d’API supplémentaires pour System.Delegate.CreateDelegate.

Voir aussi

S’applique à

CreateDelegate(Type, Type, String)

Source:
Delegate.cs
Source:
Delegate.cs
Source:
Delegate.cs

Crée un délégué du type spécifié qui représente la méthode statique spécifiée de la classe spécifiée.

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

Paramètres

type
Type

Type de délégué à créer.

target
Type

Type représentant la classe qui implémente method.

method
String

Nom de la méthode statique que le délégué doit représenter.

Retours

Délégué du type spécifié qui représente la méthode statique spécifiée de la classe spécifiée.

Exceptions

type est null.

-ou-

target est null.

-ou-

method est null.

type n’hérite pas MulticastDelegate.

-ou-

type n’est pas un RuntimeType. Consultez types d’exécution dans lede réflexion.

-ou-

target n’est pas un RuntimeType.

-ou-

target est un type générique ouvert. Autrement dit, sa propriété ContainsGenericParameters est true.

-ou-

method n’est pas une méthode static (méthodeShared en Visual Basic).

La méthode Invoke de type est introuvable.

L’appelant n’a pas les autorisations nécessaires pour accéder à method.

Remarques

Cette méthode crée des délégués pour les méthodes statiques uniquement. Une méthode d’instance est une méthode associée à une instance d’une classe ; une méthode statique est une méthode associée à la classe elle-même.

Cette surcharge de méthode équivaut à appeler la surcharge de méthode CreateDelegate(Type, Type, String, Boolean, Boolean), en spécifiant false pour ignoreCase et true pour throwOnBindFailure.

Voir aussi

S’applique à