라. UI 자동화 컨트롤 패턴

UI 자동화 기술에서는 UI 요소를 수행할 수 있는 기능이나 속성에 따라 패턴 형식을 제공하는데 이를 UI 자동화 컨트롤 패턴이라 부릅니다.

예를 들어 버튼처럼 사용자의 명령을 수행할 수 있는 컨트롤들은 Invoke 컨트롤 패턴에 속하고 스크롤 막대를 포함할 수 있는 컨트롤은 Scroll 컨트롤 패턴에 속합니다. 프로그램의 하나의 UI 컨트롤은 UI 자동화 기술에서 여러 개의 컨트롤 패턴일 수 있습니다.

UI 자동화 컨트롤 패턴에서는 특정 유형의 컨트롤에서 사용할 수 있는 기능들과 속성, 이벤트들을 유형별로 구분하여 지원합니다.

UI 자동화 공급자에서는 컨트롤 패턴을 구현하여 각 컨트롤 패턴에 따라 지원하는 기능에 관한 인터페이스를 약속합니다. UI 자동화 클라이언트는 UI 자동화 컨트롤 클래스의 메서드와 속성을 이용하여 UI 정보를 얻거나 제어합니다.

일부 컨트롤은 현재 상태에 따라 지원하는 컨트롤 패턴을 지원하지 않을 수 있습니다. 예를 들어 텍스트 박스에 텍스트 줄이 많아 세로 스크롤이 활성화하면 스크롤 패턴에 속하지만 그렇지 않으면 스크롤 패턴에 속하지 않게 됩니다. 버튼도 활성화 상태에서는 사용자가 수행할 수 있는 InvokePattern에 속하지만 비활성화 상태에서는 InvokePattern에 속하지 않습니다.