Delegate.Combine Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen çok noktaya yayın (birleştirilebilir) temsilcilerinin çağrı listelerini birleştirir.
Aşırı Yüklemeler
Combine(Delegate[]) |
Bir temsilci dizisinin çağrı listelerini birleştirir. |
Combine(ReadOnlySpan<Delegate>) |
Bir temsilci aralığının çağrı listelerini birleştirir. |
Combine(Delegate, Delegate) |
İki temsilcinin çağrı listelerini birleştirir. |
Combine(Delegate[])
- Kaynak:
- Delegate.cs
- Kaynak:
- Delegate.cs
- Kaynak:
- Delegate.cs
Bir temsilci dizisinin çağrı listelerini birleştirir.
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
Parametreler
- delegates
- Delegate[]
Birleştirecek temsilci dizisi.
Döndürülenler
delegates
dizisindeki temsilcilerin çağrı listelerini birleştirir çağrı listesi olan yeni bir temsilci.
delegates
null
ise, delegates
sıfır öğe içeriyorsa veya delegates
içindeki her giriş null
ise null
döndürür.
- Öznitelikler
Özel durumlar
delegates
içindeki null olmayan girişlerin tümü aynı temsilci türündeki örnekler değildir.
Açıklamalar
delegates
dizisi null
girdiler içeriyorsa, bu girdiler yoksayılır.
Çağırma listesi yinelenen girdiler içerebilir; diğer bir ifadeyle, aynı nesnede aynı yönteme başvuran girişler.
Not
Varyans nedeniyle atamayla uyumlu olan genel temsilciler her zaman birleştirilebilir değildir. Birleştirilebilir olması için türlerin tam olarak eşleşmesi gerekir. Örneğin, Derived
adlı bir sınıfın Base
adlı bir sınıftan türetildiğini varsayalım.
Action<Base>
türündeki bir temsilci (Visual Basic'teAction(Of Base)
) Kovaryans ve Kontravaryans'nde açıklandığı gibi Action<Derived>
türünde bir değişkene atanabilir, ancak türler tam olarak eşleşmediğinden iki temsilci birleştirilemez.
Combine, her olay oluştuğunda birden çok yöntemi çağıran olay işleyicileri oluşturmak için yararlıdır.
Ayrıca bkz.
Şunlara uygulanır
Combine(ReadOnlySpan<Delegate>)
Bir temsilci aralığının çağrı listelerini birleştirir.
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
Parametreler
- delegates
- ReadOnlySpan<Delegate>
Birleştirecek temsilcilerin yayılma alanı.
Döndürülenler
delegates
yayılma alanında temsilcilerin çağrı listelerini birleştirir bir çağrı listesi ile yeni bir temsilci.
delegates
null
ise, delegates
sıfır öğe içeriyorsa veya delegates
içindeki her giriş null
ise null
döndürür.
Şunlara uygulanır
Combine(Delegate, Delegate)
- Kaynak:
- Delegate.cs
- Kaynak:
- Delegate.cs
- Kaynak:
- Delegate.cs
İki temsilcinin çağrı listelerini birleştirir.
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
Parametreler
- a
- Delegate
Çağırma listesi önce gelen temsilci.
- b
- Delegate
Çağrı listesi en son gelen temsilci.
Döndürülenler
a
ve b
çağrı listelerini bu sırada birleştirir bir çağrı listesi olan yeni bir temsilci.
b
null
ise a
döndürür, a
null başvuruysa b
döndürür ve hem a
hem de b
null başvuru ise null başvuru döndürür.
Özel durumlar
hem a
hem de b
null
değildir ve a
ve b
aynı temsilci türünün örnekleri değildir.
Açıklamalar
Çağırma listesi yinelenen girdiler içerebilir; diğer bir ifadeyle, aynı nesnede aynı yönteme başvuran girişler.
Not
Varyans nedeniyle atamayla uyumlu olan genel temsilciler her zaman birleştirilebilir değildir. Birleştirilebilir olması için türlerin tam olarak eşleşmesi gerekir. Örneğin, Derived
adlı bir sınıfın Base
adlı bir sınıftan türetildiğini varsayalım.
Action<Base>
türündeki bir temsilci (Visual Basic'teAction(Of Base)
) Kovaryans ve Kontravaryans'nde açıklandığı gibi Action<Derived>
türünde bir değişkene atanabilir, ancak türler tam olarak eşleşmediğinden iki temsilci birleştirilemez.
Combine, her olay oluştuğunda birden çok yöntemi çağıran olay işleyicileri oluşturmak için yararlıdır.