다음을 통해 공유


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

참고참고

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

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

GridPattern 컨트롤 패턴은 자식 요소 컬렉션에 대해 컨테이너 기능을 하는 컨트롤을 지원하는 데 사용합니다. 이 요소의 자식 항목은 IGridItemProvider를 구현해야 하며 행 및 열을 기준으로 이동할 수 있는 이차원 논리적 좌표계로 구성되어야 합니다. 이 컨트롤 패턴을 구현하는 컨트롤 예제를 보려면 UI 자동화 클라이언트에 대한 컨트롤 패턴 매핑을 참조하십시오.

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

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

구현 지침 및 규칙

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

  • 표 좌표는 0을 기준으로 하며 왼쪽 위 또는 로캘에 따라 오른쪽 위 셀 좌표가 (0,0)입니다.

  • 셀이 비어 있더라도 해당 셀에 대한 ContainingGrid 속성을 지원할 수 있도록 UI 자동화 요소가 반환되어야 합니다. 표에 있는 자식 요소의 레이아웃이 비정형 배열과 유사한 경우가 이에 해당됩니다(아래 예제 참조).

비어 있는 좌표를 가진 표 컨트롤의 예

보기 좋지 않은 레이아웃의 Windows 탐색기 보기

  • 항목이 하나뿐이더라도 논리적으로 표로 간주되는 경우에는 IGridProvider를 구현해야 합니다. 표 안에 있는 자식 항목의 수는 중요하지 않습니다.

  • 공급자 구현에 따라 숨겨진 행 및 열을 UI Automation 트리에 로드할 수 있으며, 따라서 RowCountColumnCount 속성에 이러한 항목이 반영됩니다. 숨겨진 행 및 열이 로드되지 않았으면 반영되지 않습니다.

  • IGridProvider에서는 활성 표 조작을 사용할 수 없으며 ITransformProvider를 구현해야 이 기능을 사용할 수 있습니다.

  • 셀 추가, 제거, 병합 등 표의 구조나 레이아웃에 발생한 변경을 수신하려면 StructureChangedEventHandler를 사용합니다.

  • 표의 항목 또는 셀 간의 이동을 추적하려면 AutomationFocusChangedEventHandler를 사용합니다.

IGridProvider의 필수 멤버

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

필수 멤버

형식

참고

RowCount

Property

없음

ColumnCount

Property

없음

GetItem

메서드

없음

이 컨트롤 패턴에는 연결된 이벤트가 없습니다.

예외

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

예외 형식

조건

ArgumentOutOfRangeException

GetItem

  • 요청된 행 좌표가 RowCount보다 크거나 요청된 열 좌표가 ColumnCount보다 큰 경우

ArgumentOutOfRangeException

GetItem

  • 요청된 행 또는 열 좌표가 0보다 작은 경우

참고 항목

작업

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

UI 자동화의 캐싱 사용

개념

UI 자동화 컨트롤 패턴 개요

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

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

UI 자동화 트리 개요