다음을 통해 공유


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());
    }
protected:
    virtual AutomationPeer^ OnCreateAutomationPeer() override
    {
        return ref new MediaContainerAP(this, mediaElement);
    }
};
Protected Overrides Function OnCreateAutomationPeer() As AutomationPeer
    Return New MediaContainerAP(Me, mediaElement)
End Function

설명

자동화 피어의 목적과 클래스별 AutomationPeer 클래스를 정의해야 하는 이유에 대한 자세한 내용은 사용자 지정 자동화 피어를 참조하세요.

기본 OnCreateAutomationPeer 구현에서 참조하는 기본 피어가 아닌 Microsoft UI 자동화에 대한 사용자 지정 자동화 피어를 제공하려는 사용자 지정 클래스에서 이 메서드를 재정의해야 합니다. 사용자 지정 컨트롤에 대한 사용자 지정 피어를 정의하는 방법은 컨트롤의 접근성 요구 사항, 해당 UI 계약 및 동작에 따라 달라집니다. 새 피어를 정의하려는 이유에 대한 자세한 내용은 사용자 지정 자동화 피어를 참조하세요.

참고

이 샘플은 유지 관리되지 않으며 컴파일되지 않을 수 있습니다.

OnCreateAutomationPeer에서 반환된 사용자 지정 피어를 정의하는 OnCreateAutomationPeer 구현은 XAML 접근성 샘플을 참조하세요(피어 구현은 이 샘플의 시나리오 3에 포함됨).

OnCreateAutomationPeer 구현은 사용자 지정 자동화 피어의 새 instance 초기화하고 호출 컨트롤을 소유자로 전달하고 해당 instance 반환하는 것 이상의 작업을 수행하는 것이 좋습니다. 이 메서드에 다른 논리를 추가하지 마세요. 특히, 잠재적으로 동일한 호출 내에서 AutomationPeer를 소멸시킬 수 있는 모든 논리는 예기치 않은 런타임 동작을 발생시킬 수 있습니다.

적용 대상

추가 정보