Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Delegate.CreateDelegate-Methode: (Type, Object, String, Boolean)

 

Veröffentlicht: Oktober 2016

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.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

static member CreateDelegate : 
        type:Type *
        target:Object *
        method:string *
        ignoreCase:bool -> Delegate

Parameter

type
Type: System.Type

Der Type des zu erstellenden Delegaten.

target
Type: System.Object

Die Klasseninstanz, für die method aufgerufen wird.

method
Type: System.String

Der Name der Instanzenmethode, die durch den Delegaten dargestellt werden soll.

ignoreCase
Type: System.Boolean

Ein boolescher Wert, der angibt, ob die Groß- und Kleinschreibung beim Vergleichen des Methodennamens berücksichtigt werden soll.

Rückgabewert

Type: System.Delegate

Ein Delegat vom angegebenen Typ, der die angegebene Instanzenmethode darstellt, die für die angegebene Klasseninstanz aufgerufen werden soll.

Exception Condition
ArgumentNullException

type ist null.

- oder -

target ist null.

- oder -

method ist null.

ArgumentException

type erbt nicht MulticastDelegate.

- oder -

type ist keine RuntimeType. Finden Sie unter Laufzeittypen in Reflektion.

- oder -

method ist keine Instanzenmethode.

- oder -

method kann nicht gebunden werden, z. B. weil sie nicht gefunden wurde.

MissingMethodException

Die Invoke-Methode von type wurde nicht gefunden.

MethodAccessException

Der Aufrufer verfügt nicht über die erforderlichen Berechtigungen für den Zugriff auf method.

Diese Methode erstellt nur Delegaten für die Instanz. Eine Instanzmethode ist eine Methode, die eine Instanz einer Klasse zugeordnet ist. eine statische Methode ist eine Methode, die die Klasse selbst zugeordnet ist.

Diese methodenüberladung entspricht dem Aufrufen der CreateDelegate(Type, Object, String, Boolean, Boolean) Methode zu überladen, Angeben von true für throwOnBindFailure.

System_CAPS_noteHinweis

Beginnend mit der .NET Framework 2.0 Service Pack 1, diese Methode kann verwendet werden, auf nicht öffentliche Methoden zuzugreifen, wenn der Aufrufer erteilt wurde ReflectionPermission mit dem ReflectionPermissionFlag.RestrictedMemberAccess kennzeichnen und erteilen Sie der Berechtigungssatz für die nicht öffentlichen Methoden an des Aufrufers beschränkt ist Set- oder eine Teilmenge davon. (Siehe Sicherheitsüberlegungen für die Reflektion.)

Zur Verwendung dieser Funktionen sollte die Anwendung für .NET Framework 3.5 oder höher ausgelegt sein.

ReflectionPermission

for accessing a non-public method when the grant set of the non-public method is restricted to the caller's grant set, or a subset thereof. Associated enumeration: F:System.Security.Permissions.ReflectionPermissionFlag.RestrictedMemberAccess

ReflectionPermission

for accessing a non-public method regardless of its grant set. Associated enumeration: F:System.Security.Permissions.ReflectionPermissionFlag.MemberAccess

ReflectionPermission

when invoked late-bound through mechanisms such as M:System.Type.InvokeMember(System.String,System.Reflection.BindingFlags,System.Reflection.Binder,System.Object,System.Object[],System.Reflection.ParameterModifier[],System.Globalization.CultureInfo,System.String[]). Associated enumeration: F:System.Security.Permissions.ReflectionPermissionFlag.MemberAccess.

.NET Framework
Verfügbar seit 1.1
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Zurück zum Anfang
Anzeigen: