(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

Delegate::CreateDelegate-Methode (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.

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

public:
static Delegate^ CreateDelegate(
	Type^ type, 
	Object^ target, 
	String^ method, 
	bool ignoreCase, 
	bool throwOnBindFailure
)

Parameter

type
Typ: System::Type
Der Type des zu erstellenden Delegaten.
target
Typ: System::Object
Die Klasseninstanz, für die method aufgerufen wird.
method
Typ: System::String
Der Name der Instanzenmethode, die durch den Delegaten dargestellt werden soll.
ignoreCase
Typ: System::Boolean
Ein boolescher Wert, der angibt, ob die Groß- und Kleinschreibung beim Vergleichen des Methodennamens berücksichtigt werden soll.
throwOnBindFailure
Typ: System::Boolean
true , um eine Ausnahme auszulösen, wenn method nicht gebunden werden kann, andernfalls false.

Rückgabewert

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

AusnahmeBedingung
ArgumentNullException

type ist ein Nullverweis (Nothing in Visual Basic).

- oder -

target ist ein Nullverweis (Nothing in Visual Basic).

- oder -

method ist ein Nullverweis (Nothing in Visual Basic).

ArgumentException

type erbt nicht MulticastDelegate.

- oder -

type ist kein RuntimeType. Siehe Laufzeittypen in Reflexion.

- oder -

method ist keine Instanzenmethode.

- oder -

method kann nicht gebunden werden, z. B. weil es nicht gefunden werden kann, und throwOnBindFailure ist true.

MissingMethodException

Die Invoke-Methode von type wurde nicht gefunden.

MethodAccessException

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

Diese Methode erstellt ausschließlich Delegaten für Instanzenmethoden. Eine Instanzenmethode ist eine Methode, die einer Instanz einer Klasse zugeordnet ist. Eine statische Methode ist eine Methode, die der Klasse selbst zugeordnet ist.

HinweisHinweis

Ab .NET Framework 2.0 Service Pack 1 kann diese Methode verwendet werden, um auf nicht öffentliche Methoden zuzugreifen, wenn dem Aufrufer ReflectionPermission mit dem ReflectionPermissionFlag::RestrictedMemberAccess-Flag gewährt wurden und der Berechtigungssatz der nicht öffentlichen Methoden auf den Berechtigungssatz des Aufrufers oder auf eine Teilmenge dieses Berechtigungssatzes beschränkt ist. (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.

.NET Framework

Unterstützt in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

.NET für Windows Phone-Apps

Unterstützt in: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft