PresentationSource.AddSourceChangedHandler Método

Definición

Agrega un controlador para el SourceChanged evento al elemento proporcionado.

public:
 static void AddSourceChangedHandler(System::Windows::IInputElement ^ element, System::Windows::SourceChangedEventHandler ^ handler);
[System.Security.SecurityCritical]
public static void AddSourceChangedHandler(System.Windows.IInputElement element, System.Windows.SourceChangedEventHandler handler);
[<System.Security.SecurityCritical>]
static member AddSourceChangedHandler : System.Windows.IInputElement * System.Windows.SourceChangedEventHandler -> unit
Public Shared Sub AddSourceChangedHandler (element As IInputElement, handler As SourceChangedEventHandler)

Parámetros

element
IInputElement

Elemento al que se va a agregar el controlador.

handler
SourceChangedEventHandler

Implementación del controlador que se va a agregar.

Atributos

Comentarios

A pesar de lo que indica el bloque de sintaxis de este evento, no hay ningún uso legítimo del lenguaje de marcado de aplicaciones extensibles (XAML). No debes intentar agregar controladores en lenguaje de marcado de aplicaciones extensibles (XAML) y los controladores del código solo deben colocarse en objetos que actúan como hosts para el contenido de la presentación (PresentationSource ). Estos controladores solo deben asociarse durante la inicialización de objetos y deben quitarse explícitamente en un método Dispose o en una limpieza de objetos equivalente.

Aunque se trata de un evento enrutado, hay restricciones especiales que difieren del comportamiento normal del evento enrutado, debido al número relativamente pequeño de elementos en un escenario de aplicación típico que se preocuparía por controlar este evento.

  • No puede usar los UIElement métodos o ContentElementAddHandler para agregar controladores. Debe usar AddSourceChangedHandler.

  • No se admiten las sintaxis del controlador de eventos y -= C# += ni las sintaxis del controlador relacionadas específicas del lenguaje, ya que el propio evento no se expone como público. Solo se admiten los PresentationSource métodos de utilidad para agregar y quitar los controladores directamente.

  • No se permiten controladores de clase. En concreto, no se puede llamar RegisterClassHandler a este evento en un constructor de clase porque, aunque existe un campo de identificador para SourceChanged, el identificador no es público.

  • Todos los controladores registrados recibirán el evento SourceChanged incluso si uno de los controladores intenta marcar los argumentos como controlado.

Se aplica a