Delegate.Combine Methode

Definition

Verkettet die Aufruflisten der angegebenen Multicastdelegaten.

Überlädt

Combine(Delegate[])

Verkettet die Aufruflisten eines Arrays von Delegaten.

Combine(Delegate, Delegate)

Verkettet die Aufruflisten zweier Delegaten.

Combine(Delegate[])

Verkettet die Aufruflisten eines Arrays von Delegaten.

public:
 static Delegate ^ Combine(... cli::array <Delegate ^> ^ delegates);
public:
 static Delegate ^ Combine(cli::array <Delegate ^> ^ delegates);
public static Delegate Combine (params Delegate[] delegates);
public static Delegate? Combine (params Delegate?[]? delegates);
public static Delegate Combine (Delegate[] delegates);
[System.Runtime.InteropServices.ComVisible(true)]
public static Delegate Combine (params Delegate[] delegates);
static member Combine : Delegate[] -> Delegate
[<System.Runtime.InteropServices.ComVisible(true)>]
static member Combine : Delegate[] -> Delegate
Public Shared Function Combine (ParamArray delegates As Delegate()) As Delegate
Public Shared Function Combine (delegates As Delegate()) As Delegate

Parameter

delegates
Delegate[]

Das zu kombinierende Array von Delegaten.

Gibt zurück

Delegate

Ein neuer Delegat mit einer Aufrufliste, die aus der Verkettung der Aufruflisten der Delegaten im delegates-Array besteht. Gibt null zurück, wenn delegatesnull ist, delegates 0 Elemente enthält oder jeder Eintrag in delegatesnull ist.

Attribute

Ausnahmen

Nicht alle Einträge ungleich null in delegates sind Instanzen des gleichen Delegattyps.

Hinweise

Wenn das delegates Array Einträge enthält, die null sind, werden diese Einträge ignoriert.

Die Aufrufliste kann doppelte Einträge enthalten. das heißt, Einträge, die auf dieselbe Methode für dasselbe Objekt verweisen.

Hinweis

Generische Delegaten, die aufgrund von Varianz zuweisungskompatibel sind, sind nicht notwendigerweise kombinierbar. Um kombiniert werden zu können, müssen die Typen genau übereinstimmen. Angenommen, eine Klasse namens Derived wird von einer Klasse mit dem Namen Base abgeleitet. Ein Delegat vom Typ ( in Visual Basic) kann einer Variablen vom Typ zugewiesen werden, wie Action<Base> unter Action(Of Base) Kovarianz und Action<Derived> Kontravarianzerläutert. Die beiden Delegaten können jedoch nicht kombiniert werden, da die Typen nicht genau übereinstimmen.

Combine ist nützlich zum Erstellen von Ereignishandlern, die bei jedem Auftreten eines Ereignisses mehrere Methoden aufrufen.

Siehe auch

Gilt für

Combine(Delegate, Delegate)

Verkettet die Aufruflisten zweier Delegaten.

public:
 static Delegate ^ Combine(Delegate ^ a, Delegate ^ b);
public static Delegate Combine (Delegate a, Delegate b);
public static Delegate? Combine (Delegate? a, Delegate? b);
static member Combine : Delegate * Delegate -> Delegate
Public Shared Function Combine (a As Delegate, b As Delegate) As Delegate

Parameter

a
Delegate

Der Delegat, dessen Aufrufliste die erste Liste ist.

b
Delegate

Der Delegat, dessen Aufrufliste die letzte Liste ist.

Gibt zurück

Delegate

Eine neuer Delegat mit einer Aufrufliste, die aus der Verkettung der Aufruflisten von a und b in dieser Reihenfolge besteht. Gibt a zurück, wenn b gleich null ist, gibt b zurück, wenn a ein NULL-Verweis ist, und gibt einen NULL-Verweis zurück, wenn a und b NULL-Verweise sind.

Ausnahmen

Sowohl a als auch b sind nicht gleich null, und a und b sind keine Instanzen desselben Delegatentyps.

Hinweise

Die Aufrufliste kann doppelte Einträge enthalten. das heißt, Einträge, die auf dieselbe Methode für dasselbe Objekt verweisen.

Hinweis

Generische Delegaten, die aufgrund von Varianz zuweisungskompatibel sind, sind nicht notwendigerweise kombinierbar. Um kombiniert werden zu können, müssen die Typen genau übereinstimmen. Angenommen, eine Klasse namens Derived wird von einer Klasse mit dem Namen Base abgeleitet. Ein Delegat vom Typ ( in Visual Basic) kann einer Variablen vom Typ zugewiesen werden, wie Action<Base> unter Action(Of Base) Kovarianz und Action<Derived> Kontravarianzerläutert. Die beiden Delegaten können jedoch nicht kombiniert werden, da die Typen nicht genau übereinstimmen.

Combine ist nützlich zum Erstellen von Ereignishandlern, die bei jedem Auftreten eines Ereignisses mehrere Methoden aufrufen.

Siehe auch

Gilt für