다음을 통해 공유


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

참고참고

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

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

콤보 상자는 목록 상자와 정적 컨트롤 또는 편집 컨트롤이 결합된 것이며, 정적 또는 편집 컨트롤은 콤보 상자의 목록 상자 부분에서 현재 선택 상태인 항목을 표시합니다. 이 컨트롤의 목록 상자 부분은 항상 표시되거나 사용자가 컨트롤 옆에 있는 누름 단추인 드롭다운 화살표를 선택할 때에만 나타날 수 있습니다. 선택 필드가 편집 컨트롤인 경우 목록에 없는 정보를 입력할 수 있으며 편집 컨트롤이 아닌 경우에는 목록에 있는 항목만 선택할 수 있습니다.

다음 단원에서는 ComboBox 컨트롤 형식의 필수 UI Automation 트리 구조, 속성, 컨트롤 패턴 및 이벤트를 정의합니다. UI Automation 요구 사항은 Windows Presentation Foundation (WPF), Win32, Windows Forms에 관계없이 모든 콤보 상자 컨트롤에 적용됩니다.

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

  • 필수 UI 자동화 트리 구조
  • 필수 UI 자동화 속성
  • 필수 UI 자동화 컨트롤 패턴
  • 필수 이벤트
  • 관련 항목

필수 UI 자동화 트리 구조

다음 표에서는 콤보 상자 컨트롤과 관계가 있는 UI Automation 트리의 컨트롤 뷰 및 콘텐츠 뷰를 보여 주며 각 뷰에 포함될 수 있는 항목에 대해 설명합니다. UI Automation 트리에 대한 자세한 내용은 UI 자동화 트리 개요를 참조하십시오.

컨트롤 뷰

콘텐츠 뷰

ComboBox

  • Edit(0 또는 1개)

  • List(1개)

  • List Item(List의 자식, 0개 이상)

  • Button(1개)

ComboBox

  • List Item(0개 이상)

실행 대화 상자에 있는 콤보 상자와 같이 입력을 받아 편집할 수 있는 콤보 상자인 경우에만 콤보 상자의 컨트롤 뷰에 있는 편집 컨트롤이 필요합니다.

필수 UI 자동화 속성

다음 표에서는 값이나 정의가 특히 콤보 상자 컨트롤에 관련된 UI Automation 속성을 나열합니다. UI Automation 속성에 대한 자세한 내용은 클라이언트의 UI 자동화 속성를 참조하십시오.

UI Automation 속성

참고

AutomationIdProperty

설명을 참조하십시오.

이 속성의 값은 응용 프로그램의 모든 컨트롤에서 고유해야 합니다.

BoundingRectangleProperty

설명을 참조하십시오.

전체 컨트롤이 포함된 가장 바깥쪽 사각형입니다.

ClickablePointProperty

설명을 참조하십시오.

경계 사각형이 있는 경우 지원됩니다. 경계 사각형 내의 일부 지점을 클릭할 수 없는 경우 특수화된 적중 테스트를 수행하려면 클릭 가능한 지점을 재정의하여 제공해야 합니다.

ControlTypeProperty

ComboBox

이 값은 모든 UI 프레임워크에서 동일합니다.

HelpTextProperty

설명을 참조하십시오.

콤보 상자의 도움말 텍스트는 사용자에게 콤보 상자에서 옵션을 선택하도록 요청하는 이유를 설명해야 합니다. 텍스트는 도구 설명을 통해 표현되는 정보와 유사합니다. "사용자 모니터의 디스플레이 해상도가 설정하려면 항목을 선택합니다."와 같은 도움말 텍스트를 예로 들 수 있습니다.

IsContentElementProperty

True

콤보 상자 컨트롤이 항상 UI Automation 트리의 콘텐츠 뷰에 포함됩니다.

IsControlElementProperty

True

콤보 상자 컨트롤이 항상 UI Automation 트리의 컨트롤 뷰에 포함됩니다.

IsKeyboardFocusableProperty

True

콤보 상자 컨트롤이 선택 컨테이너에 있는 항목 집합을 노출합니다. UI 자동화 클라이언트에서 콤보 상자에 포커스를 설정한 경우 콤보 상자 하위 트리의 항목에 포커스가 있는 경우에도 콤보 상자 컨트롤이 키보드 포커스를 받을 수 있습니다.

LabeledByProperty

설명을 참조하십시오.

대개 콤보 상자 컨트롤에는 이 속성이 참조하는 정적 텍스트 레이블이 있습니다.

LocalizedControlTypeProperty

"콤보 상자"

ComboBox 컨트롤 형식에 해당하는 지역화된 문자열입니다.

NameProperty

설명을 참조하십시오.

대개 콤보 상자 컨트롤은 정적 텍스트 컨트롤에서 이름을 가져옵니다.

필수 UI 자동화 컨트롤 패턴

다음 표에서는 모든 콤보 상자 컨트롤이 지원해야 하는 UI Automation 컨트롤 패턴을 나열합니다. 컨트롤 패턴에 대한 자세한 내용은 UI 자동화 컨트롤 패턴 개요를 참조하십시오.

컨트롤 패턴

지원

참고

IExpandCollapseProvider

콤보 상자 컨트롤이 콤보 상자가 되려면 항상 드롭다운 단추를 포함해야 합니다.

ISelectionProvider

콤보 상자에서 현재 선택 항목을 표시합니다. 이 지원은 콤보 상자 아래에 있는 목록으로 위임됩니다.

IValueProvider

상황에 따라 다름

콤보 상자에 임의의 텍스트 값을 입력할 수 있는 경우 Value 패턴이 지원되어야 합니다. 이 패턴은 콤보 상자의 문자열 콘텐츠를 프로그래밍 방식으로 설정하는 기능을 제공합니다. Value 패턴이 지원되지 않는 경우 이는 사용자가 콤보 상자의 하위 트리에 있는 목록 항목에서 선택해야 함을 나타냅니다.

IScrollProvider

절대 지원되지 않음

Scroll 패턴은 콤보 상자에서 직접 지원되지 않습니다. 이 패턴은 콤보 상자에 포함된 목록 상자를 스크롤할 수 있는 경우 지원되며, 목록 상자가 화면에 표시되는 경우에만 지원될 수 있습니다.

필수 이벤트

다음 표에서는 모든 콤보 상자 컨트롤이 지원해야 하는 UI Automation 이벤트를 나열합니다. 이벤트에 대한 자세한 내용은 UI 자동화 이벤트 개요를 참조하십시오.

UI Automation 이벤트

지원

참고

AutomationFocusChangedEvent

필수

없음

BoundingRectangleProperty 속성 변경 이벤트

필수

없음

IsOffscreenProperty 속성 변경 이벤트

필수

없음

IsEnabledProperty 속성 변경 이벤트

필수

없음

StructureChangedEvent

필수

없음

ExpandCollapseStateProperty 속성 변경 이벤트

필수

없음

ValueProperty 속성 변경 이벤트

상황에 따라 다름

Value 패턴을 지원하는 컨트롤은 이 이벤트를 지원해야 합니다.

참고 항목

참조

ComboBox

개념

UI 자동화 컨트롤 형식 개요

UI 자동화 개요