Combine Method (Delegate[])
Collapse the table of content
Expand the table of content

Delegate.Combine Method (Delegate())

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Concatenates the invocation lists of an array of delegates.

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

'Declaration
Public Shared Function Combine ( _
	ParamArray delegates As Delegate() _
) As Delegate

Parameters

delegates
Type: System.Delegate ()
The array of delegates to combine.

Return Value

Type: System.Delegate
A new delegate with an invocation list that concatenates the invocation lists of the delegates in the delegates array. Returns Nothing if delegates is Nothing, if delegates contains zero elements, or if every entry in delegates is Nothing.

ExceptionCondition
ArgumentException

Not all the non-null entries in delegates are instances of the same delegate type.

If the delegates array contains entries that are Nothing, those entries are ignored.

The invocation list can contain duplicate entries; that is, entries that refer to the same method on the same object.

NoteNote:

Generic delegates that are assignment-compatible because of variance are not necessarily combinable. To be combinable, the types must match exactly. For example, suppose that a class named Derived is derived from a class named Base. A delegate of type Action<Base> (Action(Of Base) in Visual Basic) can be assigned to a variable of type Action<Derived>, but the two delegates cannot be combined because the types do not match exactly.

Combine is useful for creating event handlers that call multiple methods each time an event occurs.

Windows Phone OS

Supported in: 8.1, 8.0

Show:
© 2017 Microsoft