Delegate.CreateDelegate Method (Type, Type, String, Boolean, Boolean)
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Creates a delegate of the specified type that represents the specified static method of the specified class, with the specified case-sensitivity and the specified behavior on failure to bind.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Syntax
Public Shared Function CreateDelegate ( _
type As Type, _
target As Type, _
method As String, _
ignoreCase As Boolean, _
throwOnBindFailure As Boolean _
) As Delegate
public static Delegate CreateDelegate(
Type type,
Type target,
string method,
bool ignoreCase,
bool throwOnBindFailure
)
Parameters
- type
Type: System..::.Type
The type of delegate to create.
- target
Type: System..::.Type
The class that implements method.
- method
Type: System..::.String
The name of the static method that the delegate is to represent.
- ignoreCase
Type: System..::.Boolean
true to ignore the case when comparing the name of the method; otherwise, false.
- throwOnBindFailure
Type: System..::.Boolean
true to throw an exception if method cannot be bound; otherwise, false.
Return Value
Type: System..::.Delegate
A delegate of the specified type that represents the specified static method of the specified class.
Exceptions
Exception | Condition |
---|---|
ArgumentNullException | type is nullNothingnullptra null reference (Nothing in Visual Basic). -or- target is nullNothingnullptra null reference (Nothing in Visual Basic). -or- method is nullNothingnullptra null reference (Nothing in Visual Basic). |
ArgumentException | type does not inherit MulticastDelegate. -or- type is not a RuntimeType. -or- target is not a RuntimeType. -or- target is an open generic type. That is, its ContainsGenericParameters property is true. -or- method is not a static method (Shared method in Visual Basic). -or- method cannot be bound; for example, because it cannot be found, and throwOnBindFailure is true. |
MissingMethodException | The Invoke method of type is not found. |
MethodAccessException | The caller does not have access to method. -or- Application code attempts to access this member late-bound, for example, by using the Type..::.InvokeMember method. |
Remarks
This method creates delegates for static methods only. An instance method is a method that is associated with an instance of a class; a static method is a method that is associated with the class itself.
method must specify an accessible method.
Platform Notes
CreateDelegate throws MissingMethodException when attempting to create a delegate with incorrect arguments. Delegate..::.CreateDelegate throws TargetInvocationException when called on a null object. Delegate..::.CreateDelegate throws MissingMethodException instead of ArgumentException for non-instance methods.
Version Information
Windows Phone OS
Supported in: 8.1, 8.0, 7.1, 7.0
Platforms
Windows Phone