IWeakEventListener Rozhraní
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje podporu naslouchání událostí pro třídy, které očekávají příjem událostí prostřednictvím modelu WeakEvent a WeakEventManager.
public interface class IWeakEventListener
public interface IWeakEventListener
type IWeakEventListener = interface
Public Interface IWeakEventListener
- Odvozené
Poznámky
WeakEventManager (dispečer) předává událost voláním ReceiveWeakEvent metody na třídy, které implementují toto rozhraní a které byly přidány jako naslouchací procesy voláním WeakEventManager metod předem.
Hlavním důvodem pro sledování vzoru WeakEvent je, když má zdroj události životnost objektu, který je potenciálně nezávislý na naslouchacích procesů událostí. Použití centrálního odesílání událostí objektu WeakEventManager umožňuje, aby obslužné rutiny pro naslouchací procesy byly uvolněny z paměti (nebo ručně vyprázdněny), a to i v případě, že životnost zdrojového objektu přesahuje hranice naslouchacích procesů. Naproti tomu normální připojení událostí pomocí +=
nebo ekvivalentní syntaxe událostí specifické pro jazyk způsobí, že potenciálně stále připojený zdroj bude obsahovat silný odkaz na obslužné rutiny. Díky tomu nebudou odkazy na naslouchací proces včas uvolněny z paměti.
Jednou z běžných situací, kdy vztahy mezi zdroji a naslouchacími procesy naznačují použití tohoto vzoru, je zpracování událostí aktualizace pocházejících ze zdrojů pro datové vazby.
Model WeakEvent můžete použít k naslouchání událostem, které jsou pro vaši aplikaci externí. Stačí pro něj definovat pouze objekt WeakEventManager , poskytnout chování při naslouchání v ReceiveWeakEventa použít WeakEventManager k připojení odkazů na obslužnou rutinu místo +=
.
Metody
ReceiveWeakEvent(Type, Object, EventArgs) |
Přijímá události z centralizovaného správce událostí. |