IWeakEventListener Arabirim

Tanım

WeakEvent deseni ve bir WeakEventManageraracılığıyla olay almayı bekleyen sınıflar için olay dinleme desteği sağlar.

public interface class IWeakEventListener
public interface IWeakEventListener
type IWeakEventListener = interface
Public Interface IWeakEventListener
Türetilmiş

Açıklamalar

WeakEventManager (bir dağıtıcı) bu arabirimi uygulayan sınıflarda yöntemini çağırarak ReceiveWeakEvent ve önceden yöntemler çağrılarak WeakEventManager dinleyici olarak eklenmiş olan bir olayı iletir.

WeakEvent desenini izlemenin temel nedeni, olay kaynağının olay dinleyicilerinden bağımsız olabilecek bir nesne ömrüne sahip olmasıdır. Merkezi olay dağıtımının WeakEventManager kullanılması, kaynak nesne ömrü dinleyicilerin ötesine geçse bile dinleyicilerin işleyicilerinin atık olarak toplanmasına (veya el ile temizlenmesine) olanak tanır. Buna karşılık, veya eşdeğer dile özgü olay söz dizimini kullanan += normal bir olay bağlantısı, hala bağlı olabilecek kaynağın işleyicilere güçlü bir başvuru tutmasına neden olur. Bu, dinleyici başvurularının zamanında toplanan çöplerden uzak tutar.

Kaynaklar ve dinleyiciler arasındaki ilişkilerin bu düzenin kullanılmasını önerdiği yaygın durumlardan biri, veri bağlamaları için kaynaklardan gelen güncelleştirme olaylarının işlenmesidir.

Uygulamanızın dışında kalan olayları dinlemek için WeakEvent desenini kullanabilirsiniz. Bunun için yalnızca bir WeakEventManager tanımlamanız, içinde ReceiveWeakEventdinleme davranışı sağlamanız ve yerine işleyici başvurularını +=eklemek için öğesini kullanmanız WeakEventManager gerekir.

Yöntemler

ReceiveWeakEvent(Type, Object, EventArgs)

Merkezi olay yöneticisinden olayları alır.

Şunlara uygulanır

Ayrıca bkz.