다음을 통해 공유


창 컨트롤 형식에 대한 UI 자동화 지원

비고

이 설명서는 System.Windows.Automation 네임스페이스에 정의된 관리되는 UI 자동화 클래스를 사용하려는 .NET Framework 개발자를 위한 것입니다. UI 자동화에 대한 최신 정보는 Windows Automation API: UI 자동화참조하세요.

이 항목에서는 창 컨트롤 형식에 대한 UI 자동화 지원에 대한 정보를 제공합니다. UI 자동화에서 컨트롤 형식은 속성을 사용하기 ControlTypeProperty 위해 컨트롤이 충족해야 하는 조건 집합입니다. 조건에는 UI 자동화 트리 구조, UI 자동화 속성 값 및 컨트롤 패턴에 대한 특정 지침이 포함됩니다.

창 컨트롤 형식은 프레임 또는 문서 창 내의 개체를 나타내는 데 사용됩니다. 사용자는 창 컨트롤과 현재 창의 내용 사이를 탐색할 수 있지만 다른 창의 항목 간에 이동할 수는 없습니다. 따라서 창 컨트롤은 창이나 문서보다 낮지만 개별 컨트롤 위에 있는 그룹화 수준을 나타냅니다. 사용자는 컨텍스트에 따라 Tab, F6 또는 Ctrl+TAB을 눌러 창 사이를 이동합니다. 창 컨트롤 형식에는 특정 키보드 탐색이 필요하지 않습니다.

다음 섹션에서는 창 컨트롤 형식에 필요한 UI 자동화 트리 구조, 속성, 컨트롤 패턴 및 이벤트를 정의합니다. UI 자동화 요구 사항은 WPF(Windows Presentation Foundation), Win32 또는 Windows Forms 등 모든 목록 컨트롤에 적용됩니다.

필수 UI 자동화 트리 구조

다음 표에서는 창 컨트롤과 관련된 UI 자동화 트리의 컨트롤 뷰 및 콘텐츠 뷰를 보여 줍니다. 각 보기에 포함될 수 있는 항목에 대해 설명합니다. UI 자동화 트리에 대한 자세한 내용은 UI 자동화 트리 개요를 참조하세요.

컨트롤 뷰 콘텐츠 보기
패널 패널

필수 UI 자동화 속성

다음 표에서는 값 또는 정의가 창 컨트롤과 특히 관련된 UI 자동화 속성을 나열합니다. UI 자동화 속성에 대한 자세한 내용은 클라이언트용 UI 자동화 속성을 참조하세요.

UI 자동화 속성 가치 비고
AutomationIdProperty 참고를 참조하세요. 이 속성의 값은 애플리케이션의 모든 컨트롤에서 고유해야 합니다.
BoundingRectangleProperty 참고를 참조하세요. 전체 컨트롤을 포함하는 가장 바깥쪽 사각형입니다.
IsKeyboardFocusableProperty 참고를 참조하세요. 컨트롤이 키보드 포커스를 받을 수 있는 경우 이 속성을 지원해야 합니다.
NameProperty 참고를 참조하세요. 이 속성의 값은 항상 명확하고 간결하며 의미 있는 제목이어야 합니다.
ClickablePointProperty 참고를 참조하세요. 이 속성은 창 컨트롤을 클릭할 때 포커스가 되는 창 컨트롤의 클릭 가능한 지점을 노출합니다.
LabeledByProperty 참고를 참조하세요. 창 컨트롤에는 일반적으로 정적 레이블이 없습니다. 정적 텍스트 레이블이 있는 경우 이 속성을 통해 노출되어야 합니다.
ControlTypeProperty 패널 이 값은 모든 UI 프레임워크에 대해 동일합니다.
LocalizedControlTypeProperty 유리창 창 컨트롤 형식에 해당하는 지역화된 문자열입니다.
IsContentElementProperty 진실 창 컨트롤은 항상 UI 자동화 트리의 콘텐츠 보기에 포함됩니다.
IsControlElementProperty 진실 창 컨트롤은 항상 UI 자동화 트리의 컨트롤 뷰에 포함됩니다.
HelpTextProperty "" 창 컨트롤에 대한 도움말 텍스트는 프레임의 목적과 프레임이 다른 프레임과 어떻게 관련되는지를 설명해야 합니다. 프레임의 목적과 관계가 NameProperty의 값에서 명확하지 않은 경우 설명이 필요합니다. "
AccessKeyProperty 참고를 참조하세요. 특정 키 조합이 창에 포커스를 제공하는 경우 해당 정보는 이 속성을 통해 노출되어야 합니다.

필수 UI 자동화 컨트롤 패턴

다음 표에는 모든 창 컨트롤에서 지원하는 데 필요한 UI 자동화 컨트롤 패턴이 나와 있습니다. 컨트롤 패턴에 대한 자세한 내용은 UI 자동화 컨트롤 패턴 개요참조하세요.

컨트롤 패턴 지원 비고
ITransformProvider 다릅니다 창 컨트롤을 화면에서 이동, 크기 조정 또는 회전할 수 있는 경우 이 컨트롤 패턴을 구현합니다.
IWindowProvider 절대 이 컨트롤 패턴을 구현해야 하는 경우 컨트롤 형식을 Window 기반으로 해야 합니다.
IDockProvider 다릅니다 창 컨트롤을 도킹할 수 있는 경우 이 컨트롤 패턴을 구현합니다.
IScrollProvider 다릅니다 창 컨트롤을 스크롤할 수 있는 경우 이 컨트롤 패턴을 구현합니다.

필수 UI 자동화 이벤트

다음 표에서는 모든 창 컨트롤에서 지원하는 데 필요한 UI 자동화 이벤트를 나열합니다. 이벤트에 대한 자세한 내용은 UI 자동화 이벤트 개요참조하세요.

UI 자동화 이벤트 지원/값 비고
WindowClosedEvent 절대 없음
WindowOpenedEvent 절대 없음
AsyncContentLoadedEvent 필수 없음
BoundingRectangleProperty 속성 변경 이벤트입니다. 필수 없음
IsOffscreenProperty 속성 변경 이벤트입니다. 필수 없음
IsEnabledProperty 속성 변경 이벤트입니다. 필수 없음
HorizontallyScrollableProperty 속성 변경 이벤트입니다. 다릅니다 없음
HorizontalScrollPercentProperty 속성 변경 이벤트입니다. 다릅니다 없음
HorizontalViewSizeProperty 속성 변경 이벤트입니다. 다릅니다 없음
VerticalScrollPercentProperty 속성 변경 이벤트입니다. 다릅니다 없음
VerticallyScrollableProperty 속성 변경 이벤트입니다. 다릅니다 없음
VerticalViewSizeProperty 속성 변경 이벤트입니다. 다릅니다 없음
WindowVisualStateProperty 속성 변경 이벤트입니다. 절대 없음
AutomationFocusChangedEvent 필수 없음
StructureChangedEvent 필수 없음

창 컨트롤 형식 예제

다음 이미지는 창 컨트롤 형식을 구현하는 컨트롤을 보여 줍니다.

애플릿 창의 두 팬이 있는 스크린샷

UI 자동화 트리 - 컨트롤 뷰 UI 자동화 트리 - 콘텐츠 보기
  • 패널
  • 트리(스크롤 패턴)

    • TreeItem
    • 패널
    • 편집(스크롤 패턴)
-창
- 트리(스크롤 패턴)
- TreeItem
- … 창
-편집하다
- (스크롤 패턴)

참고하십시오