WeakEventManager Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Biedt een basisklasse voor de gebeurtenisbeheerder die wordt gebruikt in het zwakke gebeurtenispatroon. De manager voegt listeners toe en verwijdert deze voor gebeurtenissen (of callbacks) die ook het patroon gebruiken.
public ref class WeakEventManager abstract : System::Windows::Threading::DispatcherObject
public abstract class WeakEventManager : System.Windows.Threading.DispatcherObject
type WeakEventManager = class
inherit DispatcherObject
Public MustInherit Class WeakEventManager
Inherits DispatcherObject
- Overname
- Afgeleid
Opmerkingen
Doorgaans gebruikt u het zwakke gebeurtenispatroon wanneer de gebeurtenisbron een objectlevensduur heeft die onafhankelijk is van de gebeurtenislisteners. Door de centrale mogelijkheid voor het verzenden van gebeurtenissen te gebruiken, kunnen de handlers van WeakEventManager de listener worden verzameld, zelfs als het bronobject zich blijft voordoen. Een reguliere gebeurtenishook met behulp van de += operator zorgt er daarentegen voor dat de mogelijk niet-verbonden bron een verwijzing naar de listeners bevat. Dit voorkomt dat de ontvanger tijdig afval wordt verzameld.
Een veelvoorkomende situatie waarbij de levensduurrelaties tussen bronnen en listeners het zwakke gebeurtenispatroon moeten gebruiken, is het verwerken van update-gebeurtenissen die afkomstig zijn van gegevensbindingen.
Het zwakke gebeurtenispatroon kan ook worden gebruikt voor callbacks en reguliere gebeurtenissen.
Notities voor uitvoerders
Zie WeakEventManager voor een voorbeeld van een aangepast voorbeeld.
Constructors
| Name | Description |
|---|---|
| WeakEventManager() |
Initialiseert basisklassewaarden wanneer deze wordt gebruikt als initialisatiefunctie door de constructor van een afgeleide klasse. |
Eigenschappen
| Name | Description |
|---|---|
| Dispatcher |
Hiermee wordt de Dispatcher aan dit DispatcherObject gekoppelde bestand. (Overgenomen van DispatcherObject) |
| Item[Object] |
Hiermee worden de gegevens opgehaald of ingesteld die worden opgeslagen voor de opgegeven bron. |
| ReadLock |
Hiermee wordt een leesvergrendeling op de onderliggende gegevenstabel tot stand brengt en wordt een IDisposable. |
| WriteLock |
Hiermee wordt een schrijfvergrendeling voor de onderliggende gegevenstabel tot stand brengt en een IDisposable. |
Methoden
| Name | Description |
|---|---|
| CheckAccess() |
Bepaalt of de aanroepende thread toegang heeft tot dit DispatcherObject. (Overgenomen van DispatcherObject) |
| DeliverEvent(Object, EventArgs) |
Levert de gebeurtenis die wordt beheerd voor elke listener. |
| DeliverEventToList(Object, EventArgs, WeakEventManager+ListenerList) |
Levert de gebeurtenis die wordt beheerd voor elke listener in de opgegeven lijst. |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| GetCurrentManager(Type) |
Retourneert de WeakEventManager implementatie die wordt gebruikt voor het opgegeven type. |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| NewListenerList() |
Hiermee wordt een nieuw object geretourneerd dat listeners naar een gebeurtenis bevat. |
| ProtectedAddHandler(Object, Delegate) |
Hiermee voegt u de opgegeven gemachtigde toe als gebeurtenishandler van de opgegeven bron. |
| ProtectedAddListener(Object, IWeakEventListener) |
Hiermee voegt u de opgegeven listener toe aan de opgegeven bron voor de gebeurtenis die wordt beheerd. |
| ProtectedRemoveHandler(Object, Delegate) |
Hiermee verwijdert u de eerder toegevoegde handler uit de opgegeven bron. |
| ProtectedRemoveListener(Object, IWeakEventListener) |
Hiermee verwijdert u een eerder toegevoegde listener uit de opgegeven bron. |
| Purge(Object, Object, Boolean) |
Verwijdert inactieve listenervermeldingen uit de gegevenslijst voor de opgegeven bron. Retourneert |
| Remove(Object) |
Hiermee verwijdert u alle listeners voor de opgegeven bron. |
| ScheduleCleanup() |
Aanvragen dat een opschoning van ongebruikte vermeldingen in de onderliggende listenerlijst wordt uitgevoerd op een thread met een lagere prioriteit. |
| SetCurrentManager(Type, WeakEventManager) |
Hiermee stelt u de huidige manager in voor het opgegeven managertype. |
| StartListening(Object) |
Wanneer deze wordt overschreven in een afgeleide klasse, begint u te luisteren naar de gebeurtenis die wordt beheerd. Nadat de methode voor het StartListening(Object) eerst is aangeroepen, moet de manager de status van het aanroepen DeliverEvent(Object, EventArgs) hebben of DeliverEventToList(Object, EventArgs, WeakEventManager+ListenerList) wanneer de relevante gebeurtenis van de opgegeven bron wordt verwerkt. |
| StopListening(Object) |
Wanneer deze wordt overschreven in een afgeleide klasse, luistert u niet meer naar de opgegeven bron voor de gebeurtenis die wordt beheerd. |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
| VerifyAccess() |
Hiermee wordt afgedwongen dat de aanroepende thread toegang heeft tot dit DispatcherObject. (Overgenomen van DispatcherObject) |