다음을 통해 공유


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

참고 항목

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

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

테이블 컨트롤에 텍스트의 행과 열이 포함되고, 선택적으로 행 헤더와 열 헤더가 포함됩니다.

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

필요한 UI 자동화 트리 구조

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

컨트롤 뷰 콘텐츠 뷰
테이블

- Header(0 또는 1개)
- Text(0 또는 1개)
- 다양한 컨트롤(0개 이상)
테이블

- Text(0개 이상)
- 다양한 컨트롤(0개 이상)

테이블 컨트롤에 행 또는 열 헤더가 있으면 UI 자동화 트리의 컨트롤 뷰에 이 헤더가 노출되어야 합니다. 콘텐츠 뷰의 경우, TablePattern을 사용하여 액세스할 수 있기 때문에 이 정보를 노출할 필요가 없습니다.

필요한 UI 자동화 속성

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

UI 자동화 속성 주의
AutomationIdProperty 메모를 참조하세요. 이 속성의 값은 애플리케이션의 모든 컨트롤에서 고유해야 합니다.
BoundingRectangleProperty 메모를 참조하세요. 전체 컨트롤이 포함된 가장 바깥쪽 사각형입니다.
ClickablePointProperty 메모를 참조하세요. 경계 사각형이 없는 경우 지원됩니다. 경계 사각형 내의 일부 지점이 클릭 가능하지 않으며 특수화된 적중 테스트를 수행하는 경우 클릭 가능한 지점을 재정의하고 제공하세요.
IsKeyboardFocusableProperty 메모를 참조하세요. 컨트롤이 키보드 포커스를 받을 수 있으면 해당 컨트롤은 이 속성을 지원해야 합니다.
NameProperty 메모를 참조하세요. 테이블 컨트롤은 일반적으로 정적 텍스트 레이블에서 이름을 가져옵니다. 정적 텍스트 레이블이 없는 경우, 테이블 용도를 설명하기 위해 항상 사용할 수 있어야 하는 Name 속성을 할당해야 합니다.
LabeledByProperty 메모를 참조하세요. 정적 텍스트 레이블이 있는 경우, 이 속성은 컨트롤의 자동화 요소에 대한 참조를 노출해야 합니다.
ControlTypeProperty 테이블 이 값은 모든 UI 프레임워크에 대해 동일합니다.
LocalizedControlTypeProperty "table" Table 컨트롤 형식에 해당하는 지역화된 문자열입니다.
HelpTextProperty 메모를 참조하세요. 테이블 용도에 대한 자세한 정보가 NameProperty 액세스로 충분히 설명되지 않을 경우에는 이 속성을 통해 노출되어야 합니다.
IsContentElementProperty True 테이블 컨트롤은 항상 콘텐츠여야 합니다.
IsControlElementProperty True 테이블 컨트롤은 항상 컨트롤이어야 합니다.

필요한 UI 자동화 컨트롤 패턴

다음 표에는 테이블 컨트롤에서 지원해야 하는 UI 자동화 컨트롤 패턴이 나와 있습니다. 컨트롤 패턴에 대한 자세한 내용은 UI Automation Control Patterns Overview를 참조하세요.

컨트롤 패턴 지원 주의
IGridProvider 테이블 컨트롤은 항상 이 컨트롤 패턴을 지원합니다. 이 컨트롤에 포함된 항목에 표에 제공되는 데이터가 있기 때문입니다.
IGridItemProvider 예(자식 개체에 필요) 테이블의 내부 개체는 GridItem 및 TableItem 컨트롤 패턴을 지원해야 합니다. 테이블이 다른 테이블에 속하는 경우가 아니라면, 테이블 자체에서 GridItem 또는 TableItem 컨트롤 패턴을 지원할 필요가 없습니다.
ITableProvider 테이블 컨트롤에 콘텐츠와 연관된 헤더를 사용할 수 있는 기능이 항상 있습니다.
ITableItemProvider 예(자식 개체에 필요) 테이블의 내부 개체는 GridItem 및 TableItem 컨트롤 패턴을 지원해야 합니다. 테이블이 다른 테이블에 속하는 경우가 아니라면, 테이블 자체에서 GridItem 또는 TableItem 컨트롤 패턴을 지원할 필요가 없습니다.

필요한 UI 자동화 이벤트

다음 표에는 모든 테이블 컨트롤에서 지원해야 하는 UI 자동화 이벤트가 나열되어 있습니다. 이벤트에 대한 자세한 내용은 UI Automation Events Overview를 참조하세요.

UI 자동화 이벤트 지원 주의
BoundingRectangleProperty 속성 변경 이벤트. Required None
IsOffscreenProperty 속성 변경 이벤트. Required None
IsEnabledProperty 속성 변경 이벤트. Required None
AutomationFocusChangedEvent Required None
StructureChangedEvent Required None

참고 항목