Delegate.Combine Delegate.Combine Delegate.Combine Delegate.Combine Method

Definition

指定したマルチキャスト (組み合わせ可能) デリゲートの呼び出しリストを連結します。 Concatenates the invocation lists of the specified multicast (combinable) delegates.

Overloads

Combine(Delegate[]) Combine(Delegate[]) Combine(Delegate[]) Combine(Delegate[])

デリゲートの配列の呼び出しリストを連結します。 Concatenates the invocation lists of an array of delegates.

Combine(Delegate, Delegate) Combine(Delegate, Delegate) Combine(Delegate, Delegate) Combine(Delegate, Delegate)

2 つのデリゲートの呼び出しリストを連結します。 Concatenates the invocation lists of two delegates.

Combine(Delegate[]) Combine(Delegate[]) Combine(Delegate[]) Combine(Delegate[])

デリゲートの配列の呼び出しリストを連結します。 Concatenates the invocation lists of an array of delegates.

public:
 static Delegate ^ Combine(... cli::array <Delegate ^> ^ delegates);
[System.Runtime.InteropServices.ComVisible(true)]
public static Delegate Combine (params Delegate[] delegates);
static member Combine : Delegate[] -> Delegate
Public Shared Function Combine (ParamArray delegates As Delegate()) As Delegate

パラメーター

delegates
Delegate[]

組み合わせるデリゲートの配列。 The array of delegates to combine.

Returns

delegates 配列内のデリゲートの呼び出しリストが連結された単一の呼び出しリストを持つ新しいデリゲート。 A new delegate with an invocation list that concatenates the invocation lists of the delegates in the delegates array. delegatesnull の場合、delegates の要素が 0 個の場合、または delegates のすべてのエントリが null の場合は、null を返します。 Returns null if delegates is null, if delegates contains zero elements, or if every entry in delegates is null.

Exceptions

delegates 内の null でないすべてのエントリが必ずしも同じデリゲート型のインスタンスではありません。 Not all the non-null entries in delegates are instances of the same delegate type.

Remarks

場合、delegates配列には、あるエントリが含まれています。 null、これらのエントリは無視されます。If the delegates array contains entries that are null, those entries are ignored.

呼び出しリストが重複するエントリを含めることができます。同じオブジェクト上の同じメソッドを参照するエントリは、します。The invocation list can contain duplicate entries; that is, entries that refer to the same method on the same object.

注意

汎用デリゲートの割り当て-互換性のある分散のためには必ずしも combinable できません。Generic delegates that are assignment-compatible because of variance are not necessarily combinable. Combinable には、型が正確に一致する必要があります。To be combinable, the types must match exactly. たとえば、という名前のクラスDerivedという名前のクラスから派生Baseします。For example, suppose that a class named Derived is derived from a class named Base. 型のデリゲートAction<Base>(Action(Of Base) Visual Basic で) 型の変数に割り当てることができますAction<Derived>で説明したように共変性と反変性、ため、型、2 つのデリゲートを組み合わせることはできませんが、正確に一致しません。A delegate of type Action<Base> (Action(Of Base) in Visual Basic) can be assigned to a variable of type Action<Derived>, as explained in Covariance and Contravariance, but the two delegates cannot be combined because the types do not match exactly.

Combine 呼び出しを複数のメソッド、イベントの時刻に発生するイベント ハンドラーを作成するために役立ちます。Combine is useful for creating event handlers that call multiple methods each time an event occurs.

Security

ReflectionPermission
呼び出されたときに遅延バインディング メカニズムを通じてなどInvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[])します。 when invoked late-bound through mechanisms such as InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]). 関連付けられた列挙体。 MemberAccess Associated enumeration: MemberAccess

See Also

Combine(Delegate, Delegate) Combine(Delegate, Delegate) Combine(Delegate, Delegate) Combine(Delegate, Delegate)

2 つのデリゲートの呼び出しリストを連結します。 Concatenates the invocation lists of two delegates.

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 Delegate Delegate Delegate

連結後のリスト内で前に配置する呼び出しリストを持つデリゲート。 The delegate whose invocation list comes first.

b
Delegate Delegate Delegate Delegate

連結後のリスト内で後に配置する呼び出しリストを持つデリゲート。 The delegate whose invocation list comes last.

Returns

ab の呼び出しリストをこの順番で連結した単一の呼び出しリストを持つ新しいデリゲート。 A new delegate with an invocation list that concatenates the invocation lists of a and b in that order. bnull の場合は a を、a が null 参照の場合は b を返します。また、ab の両方が null 参照の場合は null 参照を返します。 Returns a if b is null, returns b if a is a null reference, and returns a null reference if both a and b are null references.

Exceptions

ab の両方が null ではなく、ab が同じデリゲート型のインスタンスではありません。 Both a and b are not null, and a and b are not instances of the same delegate type.

Remarks

呼び出しリストが重複するエントリを含めることができます。同じオブジェクト上の同じメソッドを参照するエントリは、します。The invocation list can contain duplicate entries; that is, entries that refer to the same method on the same object.

注意

汎用デリゲートの割り当て-互換性のある分散のためには必ずしも combinable できません。Generic delegates that are assignment-compatible because of variance are not necessarily combinable. Combinable には、型が正確に一致する必要があります。To be combinable, the types must match exactly. たとえば、という名前のクラスDerivedという名前のクラスから派生Baseします。For example, suppose that a class named Derived is derived from a class named Base. 型のデリゲートAction<Base>(Action(Of Base) Visual Basic で) 型の変数に割り当てることができますAction<Derived>で説明したように共変性と反変性、ため、型、2 つのデリゲートを組み合わせることはできませんが、正確に一致しません。A delegate of type Action<Base> (Action(Of Base) in Visual Basic) can be assigned to a variable of type Action<Derived>, as explained in Covariance and Contravariance, but the two delegates cannot be combined because the types do not match exactly.

Combine 呼び出しを複数のメソッド、イベントの時刻に発生するイベント ハンドラーを作成するために役立ちます。Combine is useful for creating event handlers that call multiple methods each time an event occurs.

Security

ReflectionPermission
呼び出されたときに遅延バインディング メカニズムを通じてなどInvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[])します。 when invoked late-bound through mechanisms such as InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]). 関連付けられた列挙体。 MemberAccess Associated enumeration: MemberAccess

See Also

Applies to