UIElement.OnCreateAutomationPeer Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt bei Implementierung in einer abgeleiteten Klasse klassenspezifische AutomationPeer-Implementierungen für die Microsoft-Benutzeroberflächenautomatisierungsinfrastruktur zurück.
protected:
virtual AutomationPeer ^ OnCreateAutomationPeer() = OnCreateAutomationPeer;
AutomationPeer OnCreateAutomationPeer();
protected virtual AutomationPeer OnCreateAutomationPeer();
function onCreateAutomationPeer()
Protected Overridable Function OnCreateAutomationPeer () As AutomationPeer
Gibt zurück
Die klassenspezifische AutomationPeer-Unterklasse , die zurückgegeben werden soll.
Beispiele
Die gesamte OnCreateAutomationPeer-Implementierung sollte aus dem Erstellen der benutzerdefinierten Automatisierungspeerklasse und derEn Rückgabe bestehen.
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
Hinweise
Weitere Informationen zum Zweck eines Automatisierungspeers und warum Sie möglicherweise eine klassenspezifische AutomationPeer-Klasse definieren müssen, finden Sie unter Benutzerdefinierte Automatisierungspeer.
Sie sollten diese Methode in einer benutzerdefinierten Klasse überschreiben, in der Sie einen benutzerdefinierten Automatisierungspeer für Die Microsoft-Benutzeroberflächenautomatisierung bereitstellen möchten, anstatt den Standardpeer, auf den von der Standardmäßigimplementierung OnCreateAutomationPeer verwiesen wird. Wie Sie einen benutzerdefinierten Peer für Ihr benutzerdefiniertes Steuerelement definieren, hängt von den Barrierefreiheitsanforderungen Ihres Steuerelements, dessen UI-Vertrag und seinem Verhalten ab. Weitere Informationen dazu, warum Sie einen neuen Peer definieren möchten, finden Sie unter Benutzerdefinierte Automatisierungspeer.
Hinweis
Dieses Beispiel wird nicht verwaltet und möglicherweise nicht kompiliert.
Eine Implementierung von OnCreateAutomationPeer, die den benutzerdefinierten Peer definiert, der von OnCreateAutomationPeer zurückgegeben wird (die Peerimplementierung ist Teil von Szenario 3 in diesem Beispiel) finden Sie im XAML-Barrierefreiheitsbeispiel .
Es wird empfohlen, dass die OnCreateAutomationPeer-Implementierung nichts anderes tun sollte, als eine neue instance Ihres benutzerdefinierten Automatisierungspeers zu initialisieren, das aufrufende Steuerelement als Besitzer zu übergeben und diese instance zurückzugeben. Versuchen Sie nicht, in diese Methode zusätzliche Logik einzubinden. Besonders Logik, die möglicherweise zur Zerstörung des AutomationPeer-Elements innerhalb desselben Aufrufs führt, kann ein unvorhergesehenes Laufzeitverhalten zur Folge haben.