Delegate.Combine Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Concatène les listes d’appel des délégués de multidiffusion (combinables) spécifiés.
Surcharges
Combine(Delegate[]) |
Concatène les listes d’appel d’un tableau de délégués. |
Combine(ReadOnlySpan<Delegate>) |
Concatène les listes d’appel d’une étendue de délégués. |
Combine(Delegate, Delegate) |
Concatène les listes d’appel de deux délégués. |
Combine(Delegate[])
- Source:
- Delegate.cs
- Source:
- Delegate.cs
- Source:
- Delegate.cs
Concatène les listes d’appel d’un tableau de délégués.
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
Paramètres
- delegates
- Delegate[]
Tableau de délégués à combiner.
Retours
Nouveau délégué avec une liste d’appel qui concatène les listes d’appel des délégués dans le tableau delegates
. Retourne null
si delegates
est null
, si delegates
contient zéro élément ou si chaque entrée dans delegates
est null
.
- Attributs
Exceptions
Toutes les entrées non null dans delegates
ne sont pas toutes des instances du même type délégué.
Remarques
Si le tableau delegates
contient des entrées null
, ces entrées sont ignorées.
La liste d’appels peut contenir des entrées en double ; autrement dit, les entrées qui font référence à la même méthode sur le même objet.
Note
Les délégués génériques compatibles avec les affectations en raison de la variance ne sont pas nécessairement combinables. Pour être combinables, les types doivent correspondre exactement. Par exemple, supposons qu’une classe nommée Derived
est dérivée d’une classe nommée Base
. Un délégué de type Action<Base>
(Action(Of Base)
en Visual Basic) peut être affecté à une variable de type Action<Derived>
, comme expliqué dans Covariance et Contravariance, mais les deux délégués ne peuvent pas être combinés, car les types ne correspondent pas exactement.
Combine est utile pour créer des gestionnaires d’événements qui appellent plusieurs méthodes chaque fois qu’un événement se produit.
Voir aussi
S’applique à
Combine(ReadOnlySpan<Delegate>)
Concatène les listes d’appel d’une étendue de délégués.
public:
static Delegate ^ Combine(ReadOnlySpan<Delegate ^> delegates);
public static Delegate? Combine (scoped ReadOnlySpan<Delegate?> delegates);
static member Combine : ReadOnlySpan<Delegate> -> Delegate
Public Shared Function Combine (delegates As ReadOnlySpan(Of Delegate)) As Delegate
Paramètres
- delegates
- ReadOnlySpan<Delegate>
Étendue des délégués à combiner.
Retours
Nouveau délégué avec une liste d’appel qui concatène les listes d’appel des délégués dans l’étendue delegates
.
Retourne null
si delegates
est null
, si delegates
contient zéro élément ou si chaque entrée dans delegates
est null
.
S’applique à
Combine(Delegate, Delegate)
- Source:
- Delegate.cs
- Source:
- Delegate.cs
- Source:
- Delegate.cs
Concatène les listes d’appel de deux délégués.
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
Paramètres
- a
- Delegate
Délégué dont la liste d’appels vient en premier.
- b
- Delegate
Délégué dont la liste d’appel est la dernière.
Retours
Nouveau délégué avec une liste d’appel qui concatène les listes d’appel de a
et de b
dans cet ordre. Retourne a
si b
est null
, retourne b
si a
est une référence Null et retourne une référence Null si les deux a
et b
sont des références Null.
Exceptions
Les a
et les b
ne sont pas null
, et a
et b
ne sont pas des instances du même type délégué.
Remarques
La liste d’appels peut contenir des entrées en double ; autrement dit, les entrées qui font référence à la même méthode sur le même objet.
Note
Les délégués génériques compatibles avec les affectations en raison de la variance ne sont pas nécessairement combinables. Pour être combinables, les types doivent correspondre exactement. Par exemple, supposons qu’une classe nommée Derived
est dérivée d’une classe nommée Base
. Un délégué de type Action<Base>
(Action(Of Base)
en Visual Basic) peut être affecté à une variable de type Action<Derived>
, comme expliqué dans Covariance et Contravariance, mais les deux délégués ne peuvent pas être combinés, car les types ne correspondent pas exactement.
Combine est utile pour créer des gestionnaires d’événements qui appellent plusieurs méthodes chaque fois qu’un événement se produit.