다음을 통해 공유


UI 자동화 Window 컨트롤 패턴 구현

참고참고

이 문서는 System.Windows.Automation 네임스페이스에 정의된 관리되는 UI Automation 클래스를 사용하려는 .NET Framework 개발자를 위해 작성되었습니다.UI Automation에 대한 최신 정보는 Windows Automation API: UI Automation을 참조하십시오.

이 항목에서는 WindowPattern 속성, 메서드 및 이벤트에 대한 정보를 포함하여 IWindowProvider 구현에 대한 지침 및 규칙을 소개합니다. 추가 참조에 대한 링크는 항목 끝 부분에 나와 있습니다.

WindowPattern 컨트롤 패턴은 일반 graphical user interface (GUI) 내에서 기본적인 창 기반 기능을 제공하는 컨트롤을 지원하는 데 사용됩니다. 이 컨트롤 패턴을 구현해야 하는 컨트롤의 예로는 최상위 응용 프로그램 창, multiple-document interface (MDI) 자식 창, 크기를 조정할 수 있는 분할 창 컨트롤, 모달 대화 상자 및 풍선 도움말 창이 있습니다.

이 항목에는 다음 단원이 포함되어 있습니다.

  • 구현 지침 및 규칙
  • IWindowProvider의 필수 멤버
  • 예외
  • 관련 항목

구현 지침 및 규칙

Window 컨트롤 패턴을 구현하는 경우 다음 지침 및 규칙을 따르십시오.

  • UI 자동화를 사용하여 창 크기와 화면 위치를 모두 수정하는 기능을 지원하기 위해서는 컨트롤에서 IWindowProvider와 함께 ITransformProvider를 구현해야 합니다.

  • 컨트롤의 이동, 크기 조정, 최대화, 최소화 또는 닫기를 수행할 수 있는 제목 표시줄이나 제목 표시줄 요소를 포함하는 컨트롤에서는 대개 IWindowProvider를 구현해야 합니다.

  • 도구 설명 팝업, 콤보 상자 또는 메뉴 드롭다운 같은 컨트롤은 대개 IWindowProvider를 구현하지 않습니다.

  • 풍선 도움말 창은 창과 같은 닫기 단추를 제공한다는 점에서 기본 도구 설명 팝업과 다릅니다.

  • IWindowProvider는 응용 프로그램 기능과 관련되어 있으며 일반적인 창 동작이 아닌 전체 화면 모드를 지원하지 않습니다.

IWindowProvider의 필수 멤버

IWindowProvider 인터페이스 구현에 필요한 속성, 메서드 및 이벤트는 다음과 같습니다.

필수 멤버

멤버 형식

참고

InteractionState

Property

없음

IsModal

Property

없음

IsTopmost

Property

없음

Maximizable

Property

없음

Minimizable

Property

없음

VisualState

Property

없음

Close

메서드

없음

SetVisualState

메서드

없음

WaitForInputIdle

메서드

없음

WindowClosedEvent

Event

없음

WindowOpenedEvent

Event

없음

WindowInteractionState

Event

ReadyForUserInteraction 상태가 보장되지는 않습니다.

예외

공급자는 다음 예외를 throw해야 합니다.

예외 형식

조건

InvalidOperationException

SetVisualState

  • 컨트롤에서 요청된 동작을 지원하지 않는 경우입니다.

ArgumentOutOfRangeException

WaitForInputIdle

  • 매개 변수가 올바른 숫자가 아닌 경우입니다.

참고 항목

작업

UI 자동화 공급자의 컨트롤 패턴 지원

UI 자동화의 캐싱 사용

개념

UI 자동화 컨트롤 패턴 개요

클라이언트용 UI 자동화 컨트롤 패턴

UI 자동화 트리 개요