Delegate.Combine Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Concatena gli elenchi di chiamate dei delegati multicast (combinabili) specificati.
Overload
Combine(Delegate[]) |
Concatena gli elenchi di chiamate di una matrice di delegati. |
Combine(ReadOnlySpan<Delegate>) |
Concatena gli elenchi di chiamate di un intervallo di delegati. |
Combine(Delegate, Delegate) |
Concatena gli elenchi di chiamate di due delegati. |
Combine(Delegate[])
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
Concatena gli elenchi di chiamate di una matrice di delegati.
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
Parametri
- delegates
- Delegate[]
Matrice di delegati da combinare.
Restituisce
Nuovo delegato con un elenco chiamate che concatena gli elenchi di chiamate dei delegati nella matrice di delegates
. Restituisce null
se delegates
è null
, se delegates
contiene zero elementi o se ogni voce in delegates
è null
.
- Attributi
Eccezioni
Non tutte le voci non Null in delegates
sono istanze dello stesso tipo delegato.
Commenti
Se la matrice di delegates
contiene voci null
, tali voci vengono ignorate.
L'elenco chiamate può contenere voci duplicate; ovvero voci che fanno riferimento allo stesso metodo sullo stesso oggetto.
Nota
I delegati generici compatibili con l'assegnazione a causa della varianza non sono necessariamente combinabili. Per essere combinabile, i tipi devono corrispondere esattamente. Si supponga, ad esempio, che una classe denominata Derived
sia derivata da una classe denominata Base
. Un delegato di tipo Action<Base>
(Action(Of Base)
in Visual Basic) può essere assegnato a una variabile di tipo Action<Derived>
, come illustrato in Covarianza e contravarianza, ma i due delegati non possono essere combinati perché i tipi non corrispondono esattamente.
Combine è utile per la creazione di gestori eventi che chiamano più metodi ogni volta che si verifica un evento.
Vedi anche
Si applica a
Combine(ReadOnlySpan<Delegate>)
Concatena gli elenchi di chiamate di un intervallo di delegati.
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
Parametri
- delegates
- ReadOnlySpan<Delegate>
Intervallo di delegati da combinare.
Restituisce
Nuovo delegato con un elenco chiamate che concatena gli elenchi di chiamate dei delegati nell'intervallo di delegates
.
Restituisce null
se delegates
è null
, se delegates
contiene zero elementi o se ogni voce in delegates
è null
.
Si applica a
Combine(Delegate, Delegate)
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
- Origine:
- Delegate.cs
Concatena gli elenchi di chiamate di due delegati.
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
Parametri
- a
- Delegate
Delegato il cui elenco chiamate viene prima.
- b
- Delegate
Delegato il cui elenco chiamate arriva per ultimo.
Restituisce
Nuovo delegato con un elenco chiamate che concatena gli elenchi di chiamate di a
e b
in tale ordine. Restituisce a
se b
è null
, restituisce b
se a
è un riferimento Null e restituisce un riferimento Null se sia a
che b
sono riferimenti Null.
Eccezioni
Sia a
che b
non sono null
e a
e b
non sono istanze dello stesso tipo delegato.
Commenti
L'elenco chiamate può contenere voci duplicate; ovvero voci che fanno riferimento allo stesso metodo sullo stesso oggetto.
Nota
I delegati generici compatibili con l'assegnazione a causa della varianza non sono necessariamente combinabili. Per essere combinabile, i tipi devono corrispondere esattamente. Si supponga, ad esempio, che una classe denominata Derived
sia derivata da una classe denominata Base
. Un delegato di tipo Action<Base>
(Action(Of Base)
in Visual Basic) può essere assegnato a una variabile di tipo Action<Derived>
, come illustrato in Covarianza e contravarianza, ma i due delegati non possono essere combinati perché i tipi non corrispondono esattamente.
Combine è utile per la creazione di gestori eventi che chiamano più metodi ogni volta che si verifica un evento.