Delegate.CreateDelegate Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellt einen Delegaten vom angegebenen Typs.
Überlädt
CreateDelegate(Type, Object, String, Boolean, Boolean) |
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene Instanzenmethode darstellt, die für die angegebene Klasseninstanz aufgerufen werden soll, wobei die Groß- und Kleinschreibung und das Verhalten bei Bindungsfehlern den Angaben entsprechend berücksichtigt bzw. nicht berücksichtigt wird. |
CreateDelegate(Type, Type, String, Boolean) |
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene statische Methode der angegebenen Klasse mit der angegebenen Berücksichtigung von Groß- und Kleinschreibung darstellt. |
CreateDelegate(Type, Object, String, Boolean) |
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene Instanzenmethode darstellt, die für die angegebene Klasseninstanz aufgerufen werden soll, wobei die Groß- und Kleinschreibung den Angaben entsprechend berücksichtigt bzw. nicht berücksichtigt wird. |
CreateDelegate(Type, Object, MethodInfo, Boolean) |
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene statische Methode oder Instanzmethode mit dem angegebenen ersten Argument und dem angegebenen Verhalten bei Bindungsfehlern darstellt. |
CreateDelegate(Type, Type, String, Boolean, Boolean) |
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene statische Methode der angegebenen Klasse darstellt, wobei die Groß- und Kleinschreibung und das Verhalten bei Bindungsfehlern den Angaben entsprechend berücksichtigt bzw. nicht berücksichtigt wird. |
CreateDelegate(Type, MethodInfo, Boolean) |
Erstellt einen Delegaten vom angegeben Typ zum Darstellen der angegebenen statischen Methode mit dem angegebenen Verhalten bei Bindungsfehlern. |
CreateDelegate(Type, Object, String) |
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene Instanzenmethode darstellt, die für die angegebene Klasseninstanz aufgerufen werden soll. |
CreateDelegate(Type, Object, MethodInfo) |
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene statische Methode oder Instanzmethode mit dem angegebenen ersten Argument darstellt. |
CreateDelegate(Type, MethodInfo) |
Erstellt einen Delegaten des angegebenen Typs, um die angegebene Methode darzustellen. |
CreateDelegate(Type, Type, String) |
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene statische Methode der angegebenen Klasse darstellt. |
CreateDelegate(Type, Object, String, Boolean, Boolean)
- Quelle:
- Delegate.CoreCLR.cs
- Quelle:
- Delegate.CoreCLR.cs
- Quelle:
- Delegate.CoreCLR.cs
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene Instanzenmethode darstellt, die für die angegebene Klasseninstanz aufgerufen werden soll, wobei die Groß- und Kleinschreibung und das Verhalten bei Bindungsfehlern den Angaben entsprechend berücksichtigt bzw. nicht berücksichtigt wird.
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
Parameter
- target
- Object
Die Klasseninstanz, für die method
aufgerufen wird.
- method
- String
Der Name der Instanzenmethode, die durch den Delegaten dargestellt werden soll.
- ignoreCase
- Boolean
Ein boolescher Wert, der angibt, ob die Groß- und Kleinschreibung beim Vergleichen des Methodennamens berücksichtigt werden soll.
- throwOnBindFailure
- Boolean
true
, um eine Ausnahme auszulösen, wenn method
nicht gebunden werden kann, andernfalls false
.
Gibt zurück
Ein Delegat vom angegebenen Typ, der die angegebene Instanzenmethode darstellt, die für die angegebene Klasseninstanz aufgerufen werden soll.
Ausnahmen
type
erbt nicht MulticastDelegate.
- oder -
type
ist keine RuntimeType
. Siehe Laufzeittypen in Reflektion.
- oder -
method
ist keine Instanzenmethode.
- oder -
method
kann nicht gebunden werden, z. B. weil sie nicht gefunden wurde, und throwOnBindFailure
ist gleich true
.
Die Invoke
-Methode von type
wurde nicht gefunden.
Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen für den Zugriff auf method
.
Hinweise
Diese Methode erstellt Delegaten nur für instance Methoden. Eine instance-Methode ist eine Methode, die einem instance einer Klasse zugeordnet ist. Eine statische Methode ist eine Methode, die der Klasse selbst zugeordnet ist.
Weitere Informationen
Gilt für:
CreateDelegate(Type, Type, String, Boolean)
- Quelle:
- Delegate.cs
- Quelle:
- Delegate.cs
- Quelle:
- Delegate.cs
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene statische Methode der angegebenen Klasse mit der angegebenen Berücksichtigung von Groß- und Kleinschreibung darstellt.
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
Parameter
- method
- String
Der Name der statischen Methode, die durch den Delegaten dargestellt werden soll.
- ignoreCase
- Boolean
Ein boolescher Wert, der angibt, ob die Groß- und Kleinschreibung beim Vergleichen des Methodennamens berücksichtigt werden soll.
Gibt zurück
Ein Delegat vom angegebenen Typ, der die angegebene statische Methode der angegebenen Klasse darstellt.
Ausnahmen
type
erbt nicht MulticastDelegate.
- oder -
type
ist keine RuntimeType
. Siehe Laufzeittypen in Reflektion.
- oder -
target
ist keine RuntimeType
.
- oder -
target
ist ein offener generischer Typ. Das bedeutet, die ContainsGenericParameters-Eigenschaft ist true
.
- oder -
method
ist keine static
-Methode (Shared
-Methode in Visual Basic).
- oder -
method
kann nicht gebunden werden, z. B. weil sie nicht gefunden wurde.
Die Invoke
-Methode von type
wurde nicht gefunden.
Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen für den Zugriff auf method
.
Hinweise
Diese Methode erstellt Delegaten nur für statische Methoden. Eine instance-Methode ist eine Methode, die einem instance einer Klasse zugeordnet ist. Eine statische Methode ist eine Methode, die der Klasse selbst zugeordnet ist.
Diese Methodenüberladung entspricht dem Aufrufen der CreateDelegate(Type, Type, String, Boolean, Boolean) Methodenüberladung, wobei für throwOnBindFailure
angegeben true
wird.
Weitere Informationen
Gilt für:
CreateDelegate(Type, Object, String, Boolean)
- Quelle:
- Delegate.cs
- Quelle:
- Delegate.cs
- Quelle:
- Delegate.cs
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene Instanzenmethode darstellt, die für die angegebene Klasseninstanz aufgerufen werden soll, wobei die Groß- und Kleinschreibung den Angaben entsprechend berücksichtigt bzw. nicht berücksichtigt wird.
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
Parameter
- target
- Object
Die Klasseninstanz, für die method
aufgerufen wird.
- method
- String
Der Name der Instanzenmethode, die durch den Delegaten dargestellt werden soll.
- ignoreCase
- Boolean
Ein boolescher Wert, der angibt, ob die Groß- und Kleinschreibung beim Vergleichen des Methodennamens berücksichtigt werden soll.
Gibt zurück
Ein Delegat vom angegebenen Typ, der die angegebene Instanzenmethode darstellt, die für die angegebene Klasseninstanz aufgerufen werden soll.
Ausnahmen
type
erbt nicht MulticastDelegate.
- oder -
type
ist keine RuntimeType
. Siehe Laufzeittypen in Reflektion.
- oder -
method
ist keine Instanzenmethode.
- oder -
method
kann nicht gebunden werden, z. B. weil sie nicht gefunden wurde.
Die Invoke
-Methode von type
wurde nicht gefunden.
Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen für den Zugriff auf method
.
Hinweise
Diese Methode erstellt Delegaten nur für instance Methoden. Eine instance-Methode ist eine Methode, die einem instance einer Klasse zugeordnet ist. Eine statische Methode ist eine Methode, die der Klasse selbst zugeordnet ist.
Diese Methodenüberladung entspricht dem Aufrufen der CreateDelegate(Type, Object, String, Boolean, Boolean) Methodenüberladung, wobei für throwOnBindFailure
angegeben true
wird.
Weitere Informationen
Gilt für:
CreateDelegate(Type, Object, MethodInfo, Boolean)
- Quelle:
- Delegate.CoreCLR.cs
- Quelle:
- Delegate.CoreCLR.cs
- Quelle:
- Delegate.CoreCLR.cs
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene statische Methode oder Instanzmethode mit dem angegebenen ersten Argument und dem angegebenen Verhalten bei Bindungsfehlern darstellt.
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
Parameter
- firstArgument
- Object
Ein Object, das das erste Argument der Methode ist, die der Delegat darstellt. Bei Instanzmethoden muss dieses mit dem Instanztyp kompatibel sein.
- method
- MethodInfo
Die MethodInfo, die die statische Methode oder Instanzmethode beschreibt, die der Delegat darstellen soll.
- throwOnBindFailure
- Boolean
true
, um eine Ausnahme auszulösen, wenn method
nicht gebunden werden kann, andernfalls false
.
Gibt zurück
Ein Delegat des angegebenen Typs, der die angegebene statische Methode oder Instanzmethode darstellt, oder null
, wenn throwOnBindFailure
false
ist und der Delegat nicht an method
gebunden werden kann.
Ausnahmen
type
erbt nicht MulticastDelegate.
- oder -
type
ist keine RuntimeType
. Siehe Laufzeittypen in Reflektion.
- oder -
method
kann nicht gebunden werden, und throwOnBindFailure
ist true
.
- oder -
method
ist keine RuntimeMethodInfo
. Siehe Laufzeittypen in Reflektion.
Die Invoke
-Methode von type
wurde nicht gefunden.
Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen für den Zugriff auf method
.
Hinweise
Diese Methodenüberladung und die CreateDelegate(Type, Object, MethodInfo) Methodenüberladung, die immer bei einem Bindungsfehler ausgelöst wird, bieten die flexibelste Möglichkeit zum Erstellen von Delegaten. Sie können sie verwenden, um Delegaten für statische oder instance Methoden mit oder ohne erstes Argument zu erstellen.
Hinweis
Wenn Sie kein erstes Argument angeben, verwenden Sie die Methodenüberladung, um die CreateDelegate(Type, MethodInfo, Boolean) Leistung zu verbessern.
Weitere Informationen und Beispiele finden Sie unter Ergänzende API-Hinweise für System.Delegate.CreateDelegate.
Weitere Informationen
Gilt für:
CreateDelegate(Type, Type, String, Boolean, Boolean)
- Quelle:
- Delegate.CoreCLR.cs
- Quelle:
- Delegate.CoreCLR.cs
- Quelle:
- Delegate.CoreCLR.cs
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene statische Methode der angegebenen Klasse darstellt, wobei die Groß- und Kleinschreibung und das Verhalten bei Bindungsfehlern den Angaben entsprechend berücksichtigt bzw. nicht berücksichtigt wird.
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
Parameter
- method
- String
Der Name der statischen Methode, die durch den Delegaten dargestellt werden soll.
- ignoreCase
- Boolean
Ein boolescher Wert, der angibt, ob die Groß- und Kleinschreibung beim Vergleichen des Methodennamens berücksichtigt werden soll.
- throwOnBindFailure
- Boolean
true
, um eine Ausnahme auszulösen, wenn method
nicht gebunden werden kann, andernfalls false
.
Gibt zurück
Ein Delegat vom angegebenen Typ, der die angegebene statische Methode der angegebenen Klasse darstellt.
Ausnahmen
type
erbt nicht MulticastDelegate.
- oder -
type
ist keine RuntimeType
. Siehe Laufzeittypen in Reflektion.
- oder -
target
ist keine RuntimeType
.
- oder -
target
ist ein offener generischer Typ. Das bedeutet, die ContainsGenericParameters-Eigenschaft ist true
.
- oder -
method
ist keine static
-Methode (Shared
-Methode in Visual Basic).
- oder -
method
kann nicht gebunden werden, z. B. weil sie nicht gefunden wurde, und throwOnBindFailure
ist gleich true
.
Die Invoke
-Methode von type
wurde nicht gefunden.
Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen für den Zugriff auf method
.
Hinweise
Diese Methode erstellt Delegaten nur für statische Methoden. Eine instance-Methode ist eine Methode, die einem instance einer Klasse zugeordnet ist. Eine statische Methode ist eine Methode, die der Klasse selbst zugeordnet ist.
Weitere Informationen
Gilt für:
CreateDelegate(Type, MethodInfo, Boolean)
- Quelle:
- Delegate.CoreCLR.cs
- Quelle:
- Delegate.CoreCLR.cs
- Quelle:
- Delegate.CoreCLR.cs
Erstellt einen Delegaten vom angegeben Typ zum Darstellen der angegebenen statischen Methode mit dem angegebenen Verhalten bei Bindungsfehlern.
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
Parameter
- method
- MethodInfo
Die MethodInfo, die die statische Methode oder Instanzmethode beschreibt, die der Delegat darstellen soll.
- throwOnBindFailure
- Boolean
true
, um eine Ausnahme auszulösen, wenn method
nicht gebunden werden kann, andernfalls false
.
Gibt zurück
Ein Delegat vom angegebenen Typ, der die angegebene statische Methode darstellen soll.
Ausnahmen
type
erbt nicht MulticastDelegate.
- oder -
type
ist keine RuntimeType
. Siehe Laufzeittypen in Reflektion.
- oder -
method
kann nicht gebunden werden, und throwOnBindFailure
ist true
.
- oder -
method
ist keine RuntimeMethodInfo
. Siehe Laufzeittypen in Reflektion.
Die Invoke
-Methode von type
wurde nicht gefunden.
Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen für den Zugriff auf method
.
Hinweise
Diese Methodenüberladung kann geöffnete statische Methodendelegaten erstellen und instance Methodendelegaten öffnen, d. h. Delegaten, die das ausgeblendete erste Argument von instance Methoden verfügbar machen. Eine ausführliche Erläuterung finden Sie in der allgemeineren CreateDelegate(Type, Object, MethodInfo, Boolean) Methodenüberladung, mit der Sie alle Kombinationen von offenen oder geschlossenen Delegaten für instance oder statische Methoden erstellen können.
Hinweis
Diese Methodenüberladung sollte verwendet werden, wenn der Delegat nicht über sein erstes Argument geschlossen wird, da es in diesem Fall etwas schneller ist.
Beispiele finden Sie unter Ergänzende API-Hinweise für System.Delegate.CreateDelegate.
Weitere Informationen
Gilt für:
CreateDelegate(Type, Object, String)
- Quelle:
- Delegate.cs
- Quelle:
- Delegate.cs
- Quelle:
- Delegate.cs
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene Instanzenmethode darstellt, die für die angegebene Klasseninstanz aufgerufen werden soll.
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
Parameter
- target
- Object
Die Klasseninstanz, für die method
aufgerufen wird.
- method
- String
Der Name der Instanzenmethode, die durch den Delegaten dargestellt werden soll.
Gibt zurück
Ein Delegat vom angegebenen Typ, der die angegebene Instanzenmethode darstellt, die für die angegebene Klasseninstanz aufgerufen werden soll.
Ausnahmen
type
erbt nicht MulticastDelegate.
- oder -
type
ist keine RuntimeType
. Siehe Laufzeittypen in Reflektion.
- oder -
method
ist keine Instanzenmethode.
- oder -
method
kann nicht gebunden werden, z. B. weil sie nicht gefunden wurde.
Die Invoke
-Methode von type
wurde nicht gefunden.
Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen für den Zugriff auf method
.
Hinweise
Diese Methode erstellt Delegaten nur für instance Methoden. Eine instance-Methode ist eine Methode, die einem instance einer Klasse zugeordnet ist. Eine statische Methode ist eine Methode, die der Klasse selbst zugeordnet ist.
Diese Methodenüberladung entspricht dem Aufrufen der CreateDelegate(Type, Object, String, Boolean, Boolean) Methodenüberladung, wobei für ignoreCase
und true
für throwOnBindFailure
angegeben false
wird.
Weitere Informationen
Gilt für:
CreateDelegate(Type, Object, MethodInfo)
- Quelle:
- Delegate.cs
- Quelle:
- Delegate.cs
- Quelle:
- Delegate.cs
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene statische Methode oder Instanzmethode mit dem angegebenen ersten Argument darstellt.
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
Parameter
- firstArgument
- Object
Das Objekt, an das der Delegat gebunden ist, oder null
, um method
als static
(Shared
in Visual Basic) zu behandeln.
- method
- MethodInfo
Die MethodInfo, die die statische Methode oder Instanzmethode beschreibt, die der Delegat darstellen soll.
Gibt zurück
Ein Delegat vom angegebenen Typ, der die angegebene statische Methode oder Instanzmethode darstellt.
Ausnahmen
type
erbt nicht MulticastDelegate.
- oder -
type
ist keine RuntimeType
. Siehe Laufzeittypen in Reflektion.
- oder -
method
kann nicht gebunden werden.
- oder -
method
ist keine RuntimeMethodInfo
. Siehe Laufzeittypen in Reflektion.
Die Invoke
-Methode von type
wurde nicht gefunden.
Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen für den Zugriff auf method
.
Hinweise
Das Aufrufen dieser Methodenüberladung entspricht dem Aufrufen der CreateDelegate(Type, Object, MethodInfo, Boolean) Methodenüberladung und dem Angeben true
für throwOnBindFailure
. Diese beiden Überladungen bieten die flexibelste Möglichkeit zum Erstellen von Delegaten. Sie können sie verwenden, um Delegaten für statische oder instance Methoden zu erstellen und optional das erste Argument anzugeben.
Hinweis
Wenn Sie kein erstes Argument angeben, verwenden Sie die Methodenüberladung, um die CreateDelegate(Type, MethodInfo) Leistung zu verbessern.
Weitere Informationen zu dieser API finden Sie unter Zusätzliche API-Hinweise für System.Delegate.CreateDelegate.
Weitere Informationen
Gilt für:
CreateDelegate(Type, MethodInfo)
- Quelle:
- Delegate.cs
- Quelle:
- Delegate.cs
- Quelle:
- Delegate.cs
Erstellt einen Delegaten des angegebenen Typs, um die angegebene Methode darzustellen.
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
Parameter
- method
- MethodInfo
Die MethodInfo, die die statische Methode oder Instanzmethode beschreibt, die der Delegat darstellen soll.
Gibt zurück
Ein Delegat des angegebenen Typs, der die angegebene Methode darstellt.
Ausnahmen
type
erbt nicht MulticastDelegate.
- oder -
type
ist keine RuntimeType
. Siehe Laufzeittypen in Reflektion.
- oder -
method
kann nicht gebunden werden.
- oder -
method
ist keine RuntimeMethodInfo
. Siehe Laufzeittypen in Reflektion.
Die Invoke
-Methode von type
wurde nicht gefunden.
Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen für den Zugriff auf method
.
Hinweise
Diese Überladung kann Delegaten für statische Methoden erstellen und instance Methodendelegaten öffnen, d. h. Delegatten, die explizit das ausgeblendete erste Argument instance Methoden angeben. Eine ausführliche Erläuterung finden Sie in der allgemeineren CreateDelegate(Type, Object, MethodInfo) Methodenüberladung, mit der Sie alle Kombinationen von offenen oder geschlossenen Delegaten für instance oder statische Methoden erstellen und optional ein erstes Argument angeben können.
Hinweis
Diese Methodenüberladung sollte verwendet werden, wenn der Delegat nicht über das erste Argument geschlossen wird, da es in diesem Fall etwas schneller ist.
Weitere Informationen zu dieser API finden Sie unter Zusätzliche API-Hinweise für System.Delegate.CreateDelegate.
Weitere Informationen
Gilt für:
CreateDelegate(Type, Type, String)
- Quelle:
- Delegate.cs
- Quelle:
- Delegate.cs
- Quelle:
- Delegate.cs
Erstellt einen Delegaten vom angegebenen Typ, der die angegebene statische Methode der angegebenen Klasse darstellt.
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
Parameter
- method
- String
Der Name der statischen Methode, die durch den Delegaten dargestellt werden soll.
Gibt zurück
Ein Delegat vom angegebenen Typ, der die angegebene statische Methode der angegebenen Klasse darstellt.
Ausnahmen
type
erbt nicht MulticastDelegate.
- oder -
type
ist keine RuntimeType
. Siehe Laufzeittypen in Reflektion.
- oder -
target
ist keine RuntimeType
.
- oder -
target
ist ein offener generischer Typ. Das bedeutet, die ContainsGenericParameters-Eigenschaft ist true
.
- oder -
method
ist keine static
-Methode (Shared
-Methode in Visual Basic).
- oder -
method
kann nicht gebunden werden, z. B. weil sie nicht gefunden wurde, und throwOnBindFailure
ist gleich true
.
Die Invoke
-Methode von type
wurde nicht gefunden.
Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen für den Zugriff auf method
.
Hinweise
Diese Methode erstellt Delegaten nur für statische Methoden. Eine instance-Methode ist eine Methode, die einem instance einer Klasse zugeordnet ist. Eine statische Methode ist eine Methode, die der Klasse selbst zugeordnet ist.
Diese Methodenüberladung entspricht dem Aufrufen der CreateDelegate(Type, Type, String, Boolean, Boolean) Methodenüberladung, wobei für ignoreCase
und true
für throwOnBindFailure
angegeben false
wird.
Weitere Informationen
Gilt für:
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für