Delegate.Combine Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Concatena as listas de invocação dos delegados multicast (combináveis) especificados.
Sobrecargas
| Combine(Delegate[]) |
Concatena as listas de invocação de uma matriz de delegados. |
| Combine(ReadOnlySpan<Delegate>) |
Concatena as listas de invocação de um intervalo de delegados. |
| Combine(Delegate, Delegate) |
Concatena as listas de invocação de dois delegados. |
Combine(Delegate[])
- Origem:
- Delegate.cs
- Origem:
- Delegate.cs
- Origem:
- Delegate.cs
- Origem:
- Delegate.cs
Concatena as listas de invocação de uma matriz de delegados.
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
Parâmetros
- delegates
- Delegate[]
A matriz de delegados a combinar.
Retornos
Um novo delegado com uma lista de invocação que concatena as listas de invocação dos delegados na matriz delegates. Retorna null se delegates for null, se delegates contiver zero elementos ou se cada entrada no delegates for null.
- Atributos
Exceções
Nem todas as entradas não nulas em delegates são instâncias do mesmo tipo delegado.
Comentários
Se a matriz delegates contiver entradas null, essas entradas serão ignoradas.
A lista de invocação pode conter entradas duplicadas; ou seja, entradas que se referem ao mesmo método no mesmo objeto.
Nota
Delegados genéricos compatíveis com atribuição devido à variação não são necessariamente combináveis. Para serem combináveis, os tipos devem corresponder exatamente. Por exemplo, suponha que uma classe chamada Derived seja derivada de uma classe chamada Base. Um delegado do tipo Action<Base> (Action(Of Base) no Visual Basic) pode ser atribuído a uma variável do tipo Action<Derived>, conforme explicado em covariância e contravariância, mas os dois delegados não podem ser combinados porque os tipos não correspondem exatamente.
Combine é útil para criar manipuladores de eventos que chamam vários métodos sempre que um evento ocorre.
Confira também
Aplica-se a
Combine(ReadOnlySpan<Delegate>)
- Origem:
- Delegate.cs
Concatena as listas de invocação de um intervalo de delegados.
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
Parâmetros
- delegates
- ReadOnlySpan<Delegate>
O intervalo de delegados a serem combinados.
Retornos
Um novo delegado com uma lista de invocação que concatena as listas de invocação dos delegados no intervalo de delegates.
Retorna null se delegates for null, se delegates contiver zero elementos ou se cada entrada no delegates for null.
Aplica-se a
Combine(Delegate, Delegate)
- Origem:
- Delegate.cs
- Origem:
- Delegate.cs
- Origem:
- Delegate.cs
- Origem:
- Delegate.cs
Concatena as listas de invocação de dois delegados.
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
Parâmetros
- a
- Delegate
O delegado cuja lista de invocação vem primeiro.
- b
- Delegate
O delegado cuja lista de invocação vem por último.
Retornos
Um novo delegado com uma lista de invocação que concatena as listas de invocação de a e b nessa ordem. Retorna a se b for null, retornará b se a for uma referência nula e retornará uma referência nula se a e b forem referências nulas.
Exceções
Tanto a quanto b não são nulle a e b não são instâncias do mesmo tipo delegado.
Comentários
A lista de invocação pode conter entradas duplicadas; ou seja, entradas que se referem ao mesmo método no mesmo objeto.
Nota
Delegados genéricos compatíveis com atribuição devido à variação não são necessariamente combináveis. Para serem combináveis, os tipos devem corresponder exatamente. Por exemplo, suponha que uma classe chamada Derived seja derivada de uma classe chamada Base. Um delegado do tipo Action<Base> (Action(Of Base) no Visual Basic) pode ser atribuído a uma variável do tipo Action<Derived>, conforme explicado em covariância e contravariância, mas os dois delegados não podem ser combinados porque os tipos não correspondem exatamente.
Combine é útil para criar manipuladores de eventos que chamam vários métodos sempre que um evento ocorre.