UIElement.OnCreateAutomationPeer Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Cuando se implementa en una clase derivada, devuelve implementaciones de AutomationPeer específicas de clase para la infraestructura de Automatización de la interfaz de usuario de Microsoft.
protected:
virtual AutomationPeer ^ OnCreateAutomationPeer() = OnCreateAutomationPeer;
AutomationPeer OnCreateAutomationPeer();
protected virtual AutomationPeer OnCreateAutomationPeer();
function onCreateAutomationPeer()
Protected Overridable Function OnCreateAutomationPeer () As AutomationPeer
Devoluciones
Subclase AutomationPeer específica de la clase que se va a devolver.
Ejemplos
La totalidad de una implementación de OnCreateAutomationPeer debe constar de construir la clase del mismo nivel de automatización personalizada y devolverla.
protected override AutomationPeer OnCreateAutomationPeer()
{
return new MediaContainerAP(this, mediaElement);
}
#include "MediaContainerAP.h"
...
public:
MyNamespace::MediaContainerAP OnCreateAutomationPeer()
{
return winrt::make<MyNamespace::implementation::MediaContainerAP>(*this, mediaElement());
}
protected:
virtual AutomationPeer^ OnCreateAutomationPeer() override
{
return ref new MediaContainerAP(this, mediaElement);
}
};
Protected Overrides Function OnCreateAutomationPeer() As AutomationPeer
Return New MediaContainerAP(Me, mediaElement)
End Function
Comentarios
Para obtener más información sobre el propósito de un elemento del mismo nivel de automatización y por qué es posible que tenga que definir una clase AutomationPeer específica de clase, consulte Elementos del mismo nivel de automatización personalizados.
Debe invalidar este método en una clase personalizada en la que quiera proporcionar un elemento del mismo nivel de automatización personalizado para La automatización de la interfaz de usuario de Microsoft, en lugar del elemento del mismo nivel predeterminado al que hace referencia la implementación predeterminada de OnCreateAutomationPeer. La forma en que define un elemento del mismo nivel personalizado para el control personalizado depende de los requisitos de accesibilidad del control, su contrato de interfaz de usuario y su comportamiento. Para obtener más información sobre por qué es posible que quiera definir un nuevo elemento del mismo nivel, consulte Sistemas del mismo nivel de automatización personalizados.
Nota:
Este ejemplo no se mantiene y es posible que no se compile.
Consulta el ejemplo de accesibilidad XAML para obtener una implementación de OnCreateAutomationPeer que define el elemento del mismo nivel personalizado devuelto por OnCreateAutomationPeer (la implementación del mismo nivel forma parte del escenario 3 de este ejemplo).
Se recomienda que la implementación de OnCreateAutomationPeer no haga nada más que inicializar una nueva instancia del mismo nivel de automatización personalizada, pasar el control de llamada como propietario y devolver esa instancia. No intentes ninguna lógica adicional en este método. En particular, cualquier lógica que pudiera provocar la destrucción del AutomationPeer en la misma llamada podría provocar un comportamiento inesperado del tiempo de ejecución.