次の方法で共有


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 コントラクト、およびその動作によって異なります。 新しいピアを定義する理由の詳細については、「 カスタム オートメーション ピア」を参照してください。

注意

このサンプルは維持されておらず、コンパイルされない可能性があります。

によってOnCreateAutomationPeer返されるカスタム ピアを定義する のOnCreateAutomationPeer実装については、「XAML アクセシビリティ サンプル」を参照してください (ピア実装は、このサンプルのシナリオ 3 の一部です)。

実装では、カスタム オートメーション ピアの OnCreateAutomationPeer 新しいインスタンスを初期化し、呼び出し元のコントロールを所有者として渡し、そのインスタンスを返す以外に何もしないことをお勧めします。 このメソッドで追加のロジックを実行しないでください。 特に、AutomationPeer のデストラクションにつながる可能性のあるロジックが同じ呼び出し内にあると、ランタイムで予期しない動作が発生する場合があります。

適用対象

こちらもご覧ください