IWeakEventListener IWeakEventListener IWeakEventListener IWeakEventListener Interface

Definition

Unterstützt Klassen, die Ereignisse über das WeakEvent-Muster erwarten, bei der Überwachung von Ereignissen und stellt einen WeakEventManager bereit.Provides event listening support for classes that expect to receive events through the WeakEvent pattern and a WeakEventManager.

public interface class IWeakEventListener
public interface IWeakEventListener
type IWeakEventListener = interface
Public Interface IWeakEventListener
Abgeleitet

Hinweise

Die WeakEventManager (ein Verteiler) leitet ein Ereignis durch Aufrufen der ReceiveWeakEvent Methode für Klassen, die diese Schnittstelle implementieren, und haben durch den Aufruf als Listener hinzugefügt wurden WeakEventManager Methoden im voraus.The WeakEventManager (a dispatcher) forwards an event by calling the ReceiveWeakEvent method on classes that implement this interface, and that have been added as listeners by calling WeakEventManager methods beforehand.

Der Hauptgrund für die folgenden des WeakEvent-Musters ist, wenn die Ereignisquelle eine Objektlebensdauer enthält, die möglicherweise unabhängig von der Ereignislistener ist.The principal reason for following the WeakEvent pattern is when the event source has an object lifetime that is potentially independent of the event listeners. Mithilfe von zentralen Ereignis Weiterleiten der ein WeakEventManager ermöglicht, die die Handlern für Listener Bereinigung gesammelt (oder manuell gelöscht), auch wenn die Lebensdauer der Energiequelle Objekt über die Listener hinausgeht.Using the central event dispatching of a WeakEventManager enables the handlers for listeners to be garbage collected (or manually purged) even if the source object lifetime extends beyond the listeners. Im Gegensatz dazu, eine normale ereigniseinbindung mit += oder entsprechende sprachspezifische Ereignissyntax bewirkt, dass die möglicherweise noch verbundene Quelle um einen starken Verweis auf die Handler zu speichern.By contrast, a normal event hookup using += or equivalent language-specific event syntax causes the potentially still-connected source to hold a strong reference to the handlers. Auf diese Weise die Listener-Verweise, von der Garbage collection rechtzeitig.This keeps the listener references from being garbage collected in a timely fashion.

Eine allgemeine Situation, in denen die Beziehungen zwischen Datenquellen und Listener empfiehlt die Verwendung dieses Musters, ist die Behandlung der Update-Ereignisse, die aus Quellen für datenbindungen.One common situation where the relationships between sources and listeners suggests the use of this pattern is the handling of update events coming from sources for data bindings.

Sie können das WeakEvent-Muster verwenden, zum Abhören von Ereignissen, die außerhalb der Anwendung sind.You can use the WeakEvent pattern to listen for events that are external to your application. Müssen Sie nur definieren eine WeakEventManager , bieten Überwachungsverhalten in ReceiveWeakEvent, und Verwenden der WeakEventManager verweist, fügen Sie den Ereignishandler statt +=.You only need to define a WeakEventManager for it, provide listening behavior in ReceiveWeakEvent, and use the WeakEventManager to attach the handler references rather than +=.

Methoden

ReceiveWeakEvent(Type, Object, EventArgs) ReceiveWeakEvent(Type, Object, EventArgs) ReceiveWeakEvent(Type, Object, EventArgs) ReceiveWeakEvent(Type, Object, EventArgs)

Empfängt Ereignisse vom zentralen Ereignis-Manager.Receives events from the centralized event manager.

Gilt für:

Siehe auch