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(Delegate, Delegate) |
İki temsilcinin çağrı listelerini birleştirir. |
Combine(Delegate[])
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
Dizideki temsilcilerin çağrı listelerini birleştirir bir çağırma listesi ile yeni bir temsilci delegates
. sıfır öğe içeriyorsa veya içindeki delegates
her giriş ise null
değerini döndürürnull
.delegates
null
delegates
- Öznitelikler
Özel durumlar
içindeki delegates
null olmayan girişlerin tümü aynı temsilci türündeki örnekler değildir.
Açıklamalar
Dizide delegates
olan null
girdiler varsa, 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 genel temsilciler birleştirilebilir olmayabilir. Birleştirilebilir olması için türlerin tam olarak eşleşmesi gerekir. Örneğin, adlı bir sınıfın adlı Derived
Base
bir sınıftan türetildiğini varsayalım. Türün Action<Base>
temsilcisi (Action(Of Base)
Visual Basic) Kovaryans ve Kontravaryans'ta açıklandığı gibi türünde Action<Derived>
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 kullanışlıdır.
Ayrıca bkz.
Şunlara uygulanır
Combine(Delegate, Delegate)
İ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ğrı listesi ilk sırada gelen temsilci.
- b
- Delegate
Çağrı listesi en son gelen temsilci.
Döndürülenler
ve çağrı listelerini bu sırada birleştirir bir çağırma listesi a
b
ile yeni bir temsilci. ise b
null
döndürüra
, null başvuru ise a
döndürür b
ve her ikisi de a
b
null başvuru ise null başvuru döndürür.
Özel durumlar
Hem hem de a
b
, ve a
değildir null
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 genel temsilciler birleştirilebilir olmayabilir. Birleştirilebilir olması için türlerin tam olarak eşleşmesi gerekir. Örneğin, adlı bir sınıfın adlı Derived
Base
bir sınıftan türetildiğini varsayalım. Türün Action<Base>
temsilcisi (Action(Of Base)
Visual Basic) Kovaryans ve Kontravaryans'ta açıklandığı gibi türünde Action<Derived>
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 kullanışlıdır.