Delegate.Remove Method

July 28, 2014

Removes the last occurrence of the invocation list of a delegate from the invocation list of another delegate.

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

public static Delegate Remove(
	Delegate source,
	Delegate value
)

Parameters

source
Type: System.Delegate
The delegate from which to remove the invocation list of value.
value
Type: System.Delegate
The delegate that supplies the invocation list to remove from the invocation list of source.

Return Value

Type: System.Delegate
A new delegate with an invocation list formed by taking the invocation list of source and removing the last occurrence of the invocation list of value, if the invocation list of value is found within the invocation list of source. Returns source if value is null or if the invocation list of value is not found within the invocation list of source. Returns a null reference if the invocation list of value is equal to the invocation list of source or if source is a null reference.

ExceptionCondition
MemberAccessException

The caller does not have access to the method represented by the delegate (for example, if the method is private).

ArgumentException

The delegate types do not match.

MethodAccessException

Application code attempts to access this member late-bound, for example, by using the Type.InvokeMember method.

If the invocation list of value matches a contiguous set of elements in the invocation list of source, then the invocation list of value is said to occur within the invocation list of source. If the invocation list of value occurs more than once in the invocation list of source, the last occurrence is removed.

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Show:
© 2014 Microsoft