WeakEventManager Clase

Definición

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

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ébiles 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 aunque el objeto de origen persista. 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 evita 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 eventos débiles 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, vea Patrones de eventos débiles.

Constructores

WeakEventManager()

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

Propiedades

Dispatcher

Obtiene el objeto Dispatcher al que está asociado DispatcherObject.

(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 IDisposable.

WriteLock

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

Métodos

CheckAccess()

Determina si el subproceso de la llamada tiene acceso a 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 que el objeto actual.

(Heredado de Object)
GetCurrentManager(Type)

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

GetHashCode()

Sirve 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 Object actual.

(Heredado de Object)
NewListenerList()

Devuelve un nuevo objeto para contener agentes de escucha para 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 previamente agregado del origen proporcionado.

Purge(Object, Object, Boolean)

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

Remove(Object)

Quita todos los agentes de escucha del origen especificado.

ScheduleCleanup()

Solicita que se realice una purga de entradas no usadas en la lista de agentes de escucha subyacente en un subproceso de menor prioridad.

SetCurrentManager(Type, WeakEventManager)

Establece el administrador actual para el tipo de administrador especificado.

StartListening(Object)

Cuando se invalida en una clase derivada, inicia la escucha para el evento que se administra. Después de llamar al método StartListening(Object) 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 administre el evento pertinente del origen proporcionado.

StopListening(Object)

Cuando se invalida en una clase derivada, deja de realizar escuchas 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 la llamada tenga acceso a DispatcherObject.

(Heredado de DispatcherObject)

Se aplica a

Consulte también