WeakEventManager Clase

Definición

Proporciona una clase base para el administrador de eventos que se usa en el patrón de eventos débil. El administrador agrega y quita agentes de escucha de eventos (o devoluciones de llamada) que también usan el patrón .

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
Herencia
WeakEventManager
Derivado

Comentarios

Normalmente, se usa el patrón de eventos débil cuando el origen del evento tiene una duración de objeto que es independiente de los agentes de escucha de eventos. El uso de la funcionalidad central de distribución de eventos de permite WeakEventManager que los controladores del agente de escucha se recopilen como elementos no utilizados incluso si el objeto de origen persiste. Por el contrario, un enlace de eventos normal mediante el += operador hace que el origen potencialmente desconectado contenga una referencia a los agentes de escucha. Esto impide que el receptor se recolecte de elementos no utilizados de forma oportuna.

Una situación común en la que las relaciones de duración entre orígenes y agentes de escucha deben usar el patrón de eventos débiles es el control de los eventos de actualización procedentes de enlaces de datos.

El patrón de evento débil también se puede usar para devoluciones de llamada y eventos regulares.

Notas a los implementadores

Para obtener un ejemplo de un elemento personalizado WeakEventManager, consulte Patrones de eventos débiles.

Constructores

Nombre Description
WeakEventManager()

Inicializa los valores de clase base cuando se usa como inicializador por el constructor de una clase derivada.

Propiedades

Nombre Description
Dispatcher

Obtiene el objeto al que DispatcherDispatcherObject está asociado.

(Heredado de DispatcherObject)
Item[Object]

Obtiene o establece los datos que se almacenan para el origen especificado.

ReadLock

Establece un bloqueo de lectura en la tabla de datos subyacente y devuelve un IDisposable.

WriteLock

Establece un bloqueo de escritura en la tabla de datos subyacente y devuelve un IDisposable.

Métodos

Nombre Description
CheckAccess()

Determina si el subproceso que llama tiene acceso a este DispatcherObject.

(Heredado de DispatcherObject)
DeliverEvent(Object, EventArgs)

Entrega el evento que se administra a cada agente de escucha.

DeliverEventToList(Object, EventArgs, WeakEventManager+ListenerList)

Entrega el evento que se administra a cada agente de escucha en la lista proporcionada.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetCurrentManager(Type)

Devuelve la WeakEventManager implementación que se usa para el tipo proporcionado.

GetHashCode()

Actúa como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
NewListenerList()

Devuelve un nuevo objeto que contiene agentes de escucha a un evento.

ProtectedAddHandler(Object, Delegate)

Agrega el delegado especificado como controlador de eventos del origen especificado.

ProtectedAddListener(Object, IWeakEventListener)

Agrega el agente de escucha proporcionado al origen proporcionado para el evento que se administra.

ProtectedRemoveHandler(Object, Delegate)

Quita el controlador agregado anteriormente del origen especificado.

ProtectedRemoveListener(Object, IWeakEventListener)

Quita un agente de escucha agregado previamente del origen proporcionado.

Purge(Object, Object, Boolean)

Quita las entradas del agente de escucha inactivas de la lista de datos del origen proporcionado. Devuelve true si algunas entradas se quitaron realmente de la lista.

Remove(Object)

Quita todos los agentes de escucha del origen especificado.

ScheduleCleanup()

Solicita que se realice una purga de entradas sin usar en la lista de agentes de escucha subyacentes en un subproceso de prioridad inferior.

SetCurrentManager(Type, WeakEventManager)

Establece el administrador actual para el tipo de administrador especificado.

StartListening(Object)

Cuando se invalida en una clase derivada, comienza a escuchar el evento que se está administrando. Después de llamar al StartListening(Object) método por primera vez, el administrador debe estar en el estado de llamar a DeliverEvent(Object, EventArgs) o DeliverEventToList(Object, EventArgs, WeakEventManager+ListenerList) cada vez que se controla el evento pertinente del origen proporcionado.

StopListening(Object)

Cuando se invalida en una clase derivada, deja de escuchar en el origen proporcionado para el evento que se administra.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
VerifyAccess()

Exige que el subproceso de llamada tenga acceso a este DispatcherObject.

(Heredado de DispatcherObject)

Se aplica a

Consulte también