Delegate.CreateDelegate Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Crea un delegato del tipo specificato.
Overload
CreateDelegate(Type, Object, String, Boolean, Boolean) |
Crea un delegato del tipo specificato che rappresenta il metodo di istanza specificato da richiamare sull'istanza della classe specificata, con la distinzione tra maiuscole e minuscole e il comportamento specificato in caso di errore di associazione. |
CreateDelegate(Type, Type, String, Boolean) |
Crea un delegato del tipo specificato che rappresenta il metodo statico specificato della classe specificata, con la distinzione tra maiuscole e minuscole specificata. |
CreateDelegate(Type, Object, String, Boolean) |
Crea un delegato del tipo specificato che rappresenta il metodo di istanza specificato da richiamare sull'istanza di classe specificata con la distinzione tra maiuscole e minuscole specificate. |
CreateDelegate(Type, Object, MethodInfo, Boolean) |
Crea un delegato del tipo specificato che rappresenta il metodo statico o di istanza specificato, con il primo argomento specificato e il comportamento specificato in caso di errore di associazione. |
CreateDelegate(Type, Type, String, Boolean, Boolean) |
Crea un delegato del tipo specificato che rappresenta il metodo statico specificato della classe specificata, con la distinzione tra maiuscole e minuscole e il comportamento specificato in caso di errore di associazione. |
CreateDelegate(Type, MethodInfo, Boolean) |
Crea un delegato del tipo specificato per rappresentare il metodo statico specificato, con il comportamento specificato in caso di errore di associazione. |
CreateDelegate(Type, Object, String) |
Crea un delegato del tipo specificato che rappresenta il metodo di istanza specificato da richiamare sull'istanza di classe specificata. |
CreateDelegate(Type, Object, MethodInfo) |
Crea un delegato del tipo specificato che rappresenta il metodo statico o di istanza specificato, con il primo argomento specificato. |
CreateDelegate(Type, MethodInfo) |
Crea un delegato del tipo specificato per rappresentare il metodo specificato. |
CreateDelegate(Type, Type, String) |
Crea un delegato del tipo specificato che rappresenta il metodo statico specificato della classe specificata. |
CreateDelegate(Type, Object, String, Boolean, Boolean)
- Origine:
- Delegate.CoreCLR.cs
- Origine:
- Delegate.CoreCLR.cs
- Origine:
- Delegate.CoreCLR.cs
Crea un delegato del tipo specificato che rappresenta il metodo di istanza specificato da richiamare sull'istanza della classe specificata, con la distinzione tra maiuscole e minuscole e il comportamento specificato in caso di errore di associazione.
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
Parametri
- target
- Object
Istanza della classe in cui viene richiamato method
.
- method
- String
Nome del metodo di istanza che il delegato deve rappresentare.
- ignoreCase
- Boolean
Valore booleano che indica se ignorare la distinzione tra maiuscole e minuscole durante il confronto del nome del metodo.
- throwOnBindFailure
- Boolean
true
generare un'eccezione se method
non può essere associato; in caso contrario, false
.
Restituisce
Delegato del tipo specificato che rappresenta il metodo di istanza specificato da richiamare sull'istanza di classe specificata.
Eccezioni
type
non eredita MulticastDelegate.
-o-
type
non è un RuntimeType
. Vedere Tipi di runtime in Reflection.
-o-
method
non è un metodo di istanza.
-o-
method
non può essere associato, ad esempio perché non è possibile trovarlo e throwOnBindFailure
è true
.
Il metodo Invoke
di type
non viene trovato.
Il chiamante non dispone delle autorizzazioni necessarie per accedere a method
.
Commenti
Questo metodo crea delegati solo per i metodi di istanza. Un metodo di istanza è un metodo associato a un'istanza di una classe; un metodo statico è un metodo associato alla classe stessa.
Vedi anche
Si applica a
CreateDelegate(Type, Type, String, Boolean)
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
Crea un delegato del tipo specificato che rappresenta il metodo statico specificato della classe specificata, con la distinzione tra maiuscole e minuscole specificata.
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
Parametri
- method
- String
Nome del metodo statico che il delegato deve rappresentare.
- ignoreCase
- Boolean
Valore booleano che indica se ignorare la distinzione tra maiuscole e minuscole durante il confronto del nome del metodo.
Restituisce
Delegato del tipo specificato che rappresenta il metodo statico specificato della classe specificata.
Eccezioni
type
non eredita MulticastDelegate.
-o-
type
non è un RuntimeType
. Vedere Tipi di runtime in Reflection.
-o-
target
non è un RuntimeType
.
-o-
target
è un tipo generico aperto. Ovvero, la proprietà ContainsGenericParameters è true
.
-o-
method
non è un metodo static
( metodoShared
in Visual Basic).
-o-
method
non può essere associato, ad esempio perché non è possibile trovarlo.
Il metodo Invoke
di type
non viene trovato.
Il chiamante non dispone delle autorizzazioni necessarie per accedere a method
.
Commenti
Questo metodo crea delegati solo per i metodi statici. Un metodo di istanza è un metodo associato a un'istanza di una classe; un metodo statico è un metodo associato alla classe stessa.
Questo overload del metodo equivale a chiamare l'overload del metodo CreateDelegate(Type, Type, String, Boolean, Boolean), specificando true
per throwOnBindFailure
.
Vedi anche
Si applica a
CreateDelegate(Type, Object, String, Boolean)
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
Crea un delegato del tipo specificato che rappresenta il metodo di istanza specificato da richiamare sull'istanza di classe specificata con la distinzione tra maiuscole e minuscole specificate.
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
Parametri
- target
- Object
Istanza della classe in cui viene richiamato method
.
- method
- String
Nome del metodo di istanza che il delegato deve rappresentare.
- ignoreCase
- Boolean
Valore booleano che indica se ignorare la distinzione tra maiuscole e minuscole durante il confronto del nome del metodo.
Restituisce
Delegato del tipo specificato che rappresenta il metodo di istanza specificato da richiamare sull'istanza di classe specificata.
Eccezioni
type
non eredita MulticastDelegate.
-o-
type
non è un RuntimeType
. Vedere Tipi di runtime in Reflection.
-o-
method
non è un metodo di istanza.
-o-
method
non può essere associato, ad esempio perché non è possibile trovarlo.
Il metodo Invoke
di type
non viene trovato.
Il chiamante non dispone delle autorizzazioni necessarie per accedere a method
.
Commenti
Questo metodo crea delegati solo per i metodi di istanza. Un metodo di istanza è un metodo associato a un'istanza di una classe; un metodo statico è un metodo associato alla classe stessa.
Questo overload del metodo equivale a chiamare l'overload del metodo CreateDelegate(Type, Object, String, Boolean, Boolean), specificando true
per throwOnBindFailure
.
Vedi anche
Si applica a
CreateDelegate(Type, Object, MethodInfo, Boolean)
- Origine:
- Delegate.CoreCLR.cs
- Origine:
- Delegate.CoreCLR.cs
- Origine:
- Delegate.CoreCLR.cs
Crea un delegato del tipo specificato che rappresenta il metodo statico o di istanza specificato, con il primo argomento specificato e il comportamento specificato in caso di errore di associazione.
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
Parametri
- firstArgument
- Object
Oggetto Object che rappresenta il primo argomento del metodo rappresentato dal delegato. Ad esempio, i metodi devono essere compatibili con il tipo di istanza.
- method
- MethodInfo
Il MethodInfo che descrive il metodo statico o di istanza che il delegato deve rappresentare.
- throwOnBindFailure
- Boolean
true
generare un'eccezione se method
non può essere associato; in caso contrario, false
.
Restituisce
Delegato del tipo specificato che rappresenta il metodo statico o dell'istanza specificato oppure null
se throwOnBindFailure
è false
e il delegato non può essere associato a method
.
Eccezioni
type
non eredita MulticastDelegate.
-o-
type
non è un RuntimeType
. Vedere Tipi di runtime in Reflection.
-o-
method
non può essere associato e throwOnBindFailure
è true
.
-o-
method
non è un RuntimeMethodInfo
. Vedere Tipi di runtime in Reflection.
Il metodo Invoke
di type
non viene trovato.
Il chiamante non dispone delle autorizzazioni necessarie per accedere a method
.
Commenti
Questo overload del metodo e l'overload del metodo CreateDelegate(Type, Object, MethodInfo), che genera sempre un errore di associazione, offrono il modo più flessibile per creare delegati. È possibile usarli per creare delegati per metodi statici o di istanza, con o senza un primo argomento.
Nota
Se non si specifica un primo argomento, usare l'overload del metodo CreateDelegate(Type, MethodInfo, Boolean) per ottenere prestazioni migliori.
Per altre informazioni ed esempi, vedere osservazioni supplementari sull'API per System.Delegate.CreateDelegate.
Vedi anche
Si applica a
CreateDelegate(Type, Type, String, Boolean, Boolean)
- Origine:
- Delegate.CoreCLR.cs
- Origine:
- Delegate.CoreCLR.cs
- Origine:
- Delegate.CoreCLR.cs
Crea un delegato del tipo specificato che rappresenta il metodo statico specificato della classe specificata, con la distinzione tra maiuscole e minuscole e il comportamento specificato in caso di errore di associazione.
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
Parametri
- method
- String
Nome del metodo statico che il delegato deve rappresentare.
- ignoreCase
- Boolean
Valore booleano che indica se ignorare la distinzione tra maiuscole e minuscole durante il confronto del nome del metodo.
- throwOnBindFailure
- Boolean
true
generare un'eccezione se method
non può essere associato; in caso contrario, false
.
Restituisce
Delegato del tipo specificato che rappresenta il metodo statico specificato della classe specificata.
Eccezioni
type
non eredita MulticastDelegate.
-o-
type
non è un RuntimeType
. Vedere Tipi di runtime in Reflection.
-o-
target
non è un RuntimeType
.
-o-
target
è un tipo generico aperto. Ovvero, la proprietà ContainsGenericParameters è true
.
-o-
method
non è un metodo static
( metodoShared
in Visual Basic).
-o-
method
non può essere associato, ad esempio perché non è possibile trovarlo e throwOnBindFailure
è true
.
Il metodo Invoke
di type
non viene trovato.
Il chiamante non dispone delle autorizzazioni necessarie per accedere a method
.
Commenti
Questo metodo crea delegati solo per i metodi statici. Un metodo di istanza è un metodo associato a un'istanza di una classe; un metodo statico è un metodo associato alla classe stessa.
Vedi anche
Si applica a
CreateDelegate(Type, MethodInfo, Boolean)
- Origine:
- Delegate.CoreCLR.cs
- Origine:
- Delegate.CoreCLR.cs
- Origine:
- Delegate.CoreCLR.cs
Crea un delegato del tipo specificato per rappresentare il metodo statico specificato, con il comportamento specificato in caso di errore di associazione.
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
Parametri
- method
- MethodInfo
Il MethodInfo che descrive il metodo statico o di istanza che il delegato deve rappresentare.
- throwOnBindFailure
- Boolean
true
generare un'eccezione se method
non può essere associato; in caso contrario, false
.
Restituisce
Delegato del tipo specificato per rappresentare il metodo statico specificato.
Eccezioni
type
non eredita MulticastDelegate.
-o-
type
non è un RuntimeType
. Vedere Tipi di runtime in Reflection.
-o-
method
non può essere associato e throwOnBindFailure
è true
.
-o-
method
non è un RuntimeMethodInfo
. Vedere Tipi di runtime in Reflection.
Il metodo Invoke
di type
non viene trovato.
Il chiamante non dispone delle autorizzazioni necessarie per accedere a method
.
Commenti
Questo overload del metodo può creare delegati di metodo statici aperti e delegati del metodo di istanza aperta, ovvero delegati che espongono il primo argomento nascosto dei metodi di istanza. Per una spiegazione dettagliata, vedere l'overload del metodo CreateDelegate(Type, Object, MethodInfo, Boolean) più generale, che consente di creare tutte le combinazioni di delegati aperti o chiusi per l'istanza o i metodi statici.
Nota
Questo overload del metodo deve essere usato quando il delegato non viene chiuso sul primo argomento, perché è leggermente più veloce in questo caso.
Per esempi, vedere osservazioni supplementari dell'API per System.Delegate.CreateDelegate.
Vedi anche
Si applica a
CreateDelegate(Type, Object, String)
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
Crea un delegato del tipo specificato che rappresenta il metodo di istanza specificato da richiamare sull'istanza di classe specificata.
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
Parametri
- target
- Object
Istanza della classe in cui viene richiamato method
.
- method
- String
Nome del metodo di istanza che il delegato deve rappresentare.
Restituisce
Delegato del tipo specificato che rappresenta il metodo di istanza specificato da richiamare sull'istanza di classe specificata.
Eccezioni
type
non eredita MulticastDelegate.
-o-
type
non è un RuntimeType
. Vedere Tipi di runtime in Reflection.
-o-
method
non è un metodo di istanza.
-o-
method
non può essere associato, ad esempio perché non è possibile trovarlo.
Il metodo Invoke
di type
non viene trovato.
Il chiamante non dispone delle autorizzazioni necessarie per accedere a method
.
Commenti
Questo metodo crea delegati solo per i metodi di istanza. Un metodo di istanza è un metodo associato a un'istanza di una classe; un metodo statico è un metodo associato alla classe stessa.
Questo overload del metodo equivale a chiamare l'overload del metodo CreateDelegate(Type, Object, String, Boolean, Boolean), specificando false
per ignoreCase
e true
per throwOnBindFailure
.
Vedi anche
Si applica a
CreateDelegate(Type, Object, MethodInfo)
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
Crea un delegato del tipo specificato che rappresenta il metodo statico o di istanza specificato, con il primo argomento specificato.
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
Parametri
- firstArgument
- Object
Oggetto a cui è associato il delegato o null
di trattare method
come static
(Shared
in Visual Basic).
- method
- MethodInfo
Il MethodInfo che descrive il metodo statico o di istanza che il delegato deve rappresentare.
Restituisce
Delegato del tipo specificato che rappresenta il metodo statico o di istanza specificato.
Eccezioni
type
non eredita MulticastDelegate.
-o-
type
non è un RuntimeType
. Vedere Tipi di runtime in Reflection.
-o-
method
non può essere associato.
-o-
method
non è un RuntimeMethodInfo
. Vedere Tipi di runtime in Reflection.
Il metodo Invoke
di type
non viene trovato.
Il chiamante non dispone delle autorizzazioni necessarie per accedere a method
.
Commenti
La chiamata a questo overload del metodo equivale a chiamare l'overload del metodo CreateDelegate(Type, Object, MethodInfo, Boolean) e specificare true
per throwOnBindFailure
. Questi due overload offrono il modo più flessibile per creare delegati. È possibile usarli per creare delegati per i metodi statici o di istanza e, facoltativamente, per specificare il primo argomento.
Nota
Se non si specifica un primo argomento, usare l'overload del metodo CreateDelegate(Type, MethodInfo) per ottenere prestazioni migliori.
Per altre informazioni su questa API, vedere osservazioni supplementari sull'API per System.Delegate.CreateDelegate.
Vedi anche
Si applica a
CreateDelegate(Type, MethodInfo)
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
Crea un delegato del tipo specificato per rappresentare il metodo specificato.
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
Parametri
- method
- MethodInfo
Il MethodInfo che descrive il metodo statico o di istanza che il delegato deve rappresentare.
Restituisce
Delegato del tipo specificato per rappresentare il metodo specificato.
Eccezioni
type
non eredita MulticastDelegate.
-o-
type
non è un RuntimeType
. Vedere Tipi di runtime in Reflection.
-o-
method
non può essere associato.
-o-
method
non è un RuntimeMethodInfo
. Vedere Tipi di runtime in Reflection.
Il metodo Invoke
di type
non viene trovato.
Il chiamante non dispone delle autorizzazioni necessarie per accedere a method
.
Commenti
Questo overload può creare delegati per metodi statici e delegati del metodo di istanza aperta; ovvero i delegati che forniscono in modo esplicito il primo argomento nascosto dei metodi di istanza. Per una spiegazione dettagliata, vedere l'overload del metodo CreateDelegate(Type, Object, MethodInfo) più generale, che consente di creare tutte le combinazioni di delegati aperti o chiusi per esempio o metodi statici e, facoltativamente, per specificare un primo argomento.
Nota
Questo overload del metodo deve essere usato quando il delegato non viene chiuso sul primo argomento, perché è leggermente più veloce in questo caso.
Per altre informazioni su questa API, vedere osservazioni supplementari sull'API per System.Delegate.CreateDelegate.
Vedi anche
Si applica a
CreateDelegate(Type, Type, String)
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
Crea un delegato del tipo specificato che rappresenta il metodo statico specificato della classe specificata.
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
Parametri
- method
- String
Nome del metodo statico che il delegato deve rappresentare.
Restituisce
Delegato del tipo specificato che rappresenta il metodo statico specificato della classe specificata.
Eccezioni
type
non eredita MulticastDelegate.
-o-
type
non è un RuntimeType
. Vedere Tipi di runtime in Reflection.
-o-
target
non è un RuntimeType
.
-o-
target
è un tipo generico aperto. Ovvero, la proprietà ContainsGenericParameters è true
.
-o-
method
non è un metodo static
( metodoShared
in Visual Basic).
Il metodo Invoke
di type
non viene trovato.
Il chiamante non dispone delle autorizzazioni necessarie per accedere a method
.
Commenti
Questo metodo crea delegati solo per i metodi statici. Un metodo di istanza è un metodo associato a un'istanza di una classe; un metodo statico è un metodo associato alla classe stessa.
Questo overload del metodo equivale a chiamare l'overload del metodo CreateDelegate(Type, Type, String, Boolean, Boolean), specificando false
per ignoreCase
e true
per throwOnBindFailure
.