다음을 통해 공유


Delegate.Combine 메서드

정의

지정된 멀티캐스트(결합 가능) 대리자의 호출 목록을 연결합니다.

오버로드

Combine(Delegate[])

대리자 배열의 호출 목록을 연결합니다.

Combine(ReadOnlySpan<Delegate>)

대리자 범위의 호출 목록을 연결합니다.

Combine(Delegate, Delegate)

두 대리자의 호출 목록을 연결합니다.

Combine(Delegate[])

Source:
Delegate.cs
Source:
Delegate.cs
Source:
Delegate.cs

대리자 배열의 호출 목록을 연결합니다.

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

매개 변수

delegates
Delegate[]

결합할 대리자의 배열입니다.

반환

delegates 배열에 있는 대리자의 호출 목록을 연결하는 호출 목록이 있는 새 대리자입니다. delegates null경우, delegates 요소가 0인 경우 또는 delegates 모든 항목이 null경우 null 반환합니다.

특성

예외

delegates null이 아닌 모든 항목이 동일한 대리자 형식의 인스턴스인 것은 아닙니다.

설명

delegates 배열에 null항목이 포함되어 있으면 해당 항목은 무시됩니다.

호출 목록에 중복 항목이 포함될 수 있습니다. 즉, 동일한 개체에서 동일한 메서드를 참조하는 항목입니다.

메모

분산으로 인해 할당과 호환되는 제네릭 대리자는 반드시 결합할 수 있는 것은 아닙니다. 결합 가능하려면 형식이 정확히 일치해야 합니다. 예를 들어 이름이 Derived 클래스가 Base클래스에서 파생되었다고 가정합니다. 공변성 및 반공변성설명한 대로 Action<Base> 형식의 대리자(Visual Basic의Action(Of Base))를 Action<Derived>형식 변수에 할당할 수 있지만 형식이 정확히 일치하지 않으므로 두 대리자를 결합할 수 없습니다.

Combine 이벤트가 발생할 때마다 여러 메서드를 호출하는 이벤트 처리기를 만드는 데 유용합니다.

추가 정보

적용 대상

Combine(ReadOnlySpan<Delegate>)

대리자 범위의 호출 목록을 연결합니다.

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

매개 변수

delegates
ReadOnlySpan<Delegate>

결합할 대리자의 범위입니다.

반환

delegates 범위에서 대리자의 호출 목록을 연결하는 호출 목록이 있는 새 대리자입니다. delegates null경우, delegates 요소가 0인 경우 또는 delegates 모든 항목이 null경우 null 반환합니다.

적용 대상

Combine(Delegate, Delegate)

Source:
Delegate.cs
Source:
Delegate.cs
Source:
Delegate.cs

두 대리자의 호출 목록을 연결합니다.

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

매개 변수

a
Delegate

호출 목록이 먼저 오는 대리자입니다.

b
Delegate

호출 목록이 마지막으로 오는 대리자입니다.

반환

a 호출 목록을 연결하고 해당 순서로 b 호출 목록이 있는 새 대리자입니다. b null경우 a 반환하고, a null 참조이면 b 반환하고, ab 모두 null 참조인 경우 null 참조를 반환합니다.

예외

ab 모두 null않으며 ab 동일한 대리자 형식의 인스턴스가 아닙니다.

설명

호출 목록에 중복 항목이 포함될 수 있습니다. 즉, 동일한 개체에서 동일한 메서드를 참조하는 항목입니다.

메모

분산으로 인해 할당과 호환되는 제네릭 대리자는 반드시 결합할 수 있는 것은 아닙니다. 결합 가능하려면 형식이 정확히 일치해야 합니다. 예를 들어 이름이 Derived 클래스가 Base클래스에서 파생되었다고 가정합니다. 공변성 및 반공변성설명한 대로 Action<Base> 형식의 대리자(Visual Basic의Action(Of Base))를 Action<Derived>형식 변수에 할당할 수 있지만 형식이 정확히 일치하지 않으므로 두 대리자를 결합할 수 없습니다.

Combine 이벤트가 발생할 때마다 여러 메서드를 호출하는 이벤트 처리기를 만드는 데 유용합니다.

추가 정보

적용 대상