Delegate.Combine Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
Ein neuer Delegat mit einer Aufrufliste, die aus der Verkettung der Aufruflisten der Delegaten im delegates
-Array besteht. Gibt null
zurück, wenn delegates
null
ist, delegates
0 Elemente enthält oder jeder Eintrag in delegates
null
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
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.