UIElement.OnCreateAutomationPeer 方法

定义

在派生类中实现时,为 Microsoft UI 自动化基础结构返回特定于类的 AutomationPeer 实现。

protected:
 virtual AutomationPeer ^ OnCreateAutomationPeer() = OnCreateAutomationPeer;
AutomationPeer OnCreateAutomationPeer();
protected virtual AutomationPeer OnCreateAutomationPeer();
function onCreateAutomationPeer()
Protected Overridable Function OnCreateAutomationPeer () As AutomationPeer

返回

要返回的特定于类 的 AutomationPeer 子类。

示例

整个 OnCreateAutomationPeer 实现应包括构造自定义自动化对等类并返回它。

protected override AutomationPeer OnCreateAutomationPeer() 
{
    return new MediaContainerAP(this, mediaElement); 
}
#include "MediaContainerAP.h"
...
public:
    MyNamespace::MediaContainerAP OnCreateAutomationPeer()
    {
        return winrt::make<MyNamespace::implementation::MediaContainerAP>(*this, mediaElement());
    }

注解

有关自动化对等的用途以及为什么可能需要定义特定于类的 AutomationPeer 类的详细信息,请参阅 自定义自动化对等

应在要为 Microsoft UI 自动化提供自定义自动化对等的自定义类中重写此方法,而不是默认实现引用的默认 OnCreateAutomationPeer 对等。 如何为自定义控件定义自定义对等取决于控件的辅助功能要求、UI 协定及其行为。 有关为何要定义新对等方的详细信息,请参阅自定义自动化对等。

注意

此示例未维护,可能无法编译。

有关的实现,请参阅 XAML 辅助功能示例 ,该实现 OnCreateAutomationPeer 定义 (OnCreateAutomationPeer 此示例) 中的对等实现是方案 3 的一部分。

建议实现 OnCreateAutomationPeer 只执行初始化自定义自动化对等的新实例、以所有者身份传递调用控件并返回该实例。 请勿尝试此方法中的其他逻辑。 特别是,可能会导致损坏同一调用中 AutomationPeer 的任何逻辑可能会产生意外的运行时行为。

适用于

另请参阅