이 항목에서는 편집 컨트롤 형식에 대한 Microsoft UI Automation 지원에 대한 정보를 제공합니다.
편집 컨트롤을 사용하면 서식이 풍부한 지원 없이 간단한 텍스트 줄을 보고 편집할 수 있습니다.
다음 섹션에서는 편집 컨트롤 형식에 필요한 UI 자동화 트리 구조, 속성, 컨트롤 패턴 및 이벤트를 정의합니다. UI 자동화 요구 사항은 UI 프레임워크/플랫폼이 컨트롤 형식 및 컨트롤 패턴에 대한 UI 자동화 지원을 통합하는 모든 편집 컨트롤에 적용됩니다.
이 항목에는 다음 섹션이 포함되어 있습니다.
일반적인 트리 구조
다음 표에서는 컨트롤 편집과 관련된 UI 자동화 트리의 일반적인 컨트롤 및 콘텐츠 뷰를 보여 줍니다. 각 보기에 포함될 수 있는 항목에 대해 설명합니다. UI 자동화 트리에 대한 자세한 내용은 UI 자동화 트리 개요참조하세요.
| 컨트롤 뷰 | 콘텐츠 보기 |
|---|---|
|
|
편집 컨트롤 형식을 구현하는 컨트롤은 한 줄 컨트롤이므로 UI 자동화 트리의 컨트롤 뷰에 항상 스크롤 막대가 0개 있습니다. 일부 레이아웃 시나리오에서는 텍스트 한 줄이 줄 바꿈할 수 있습니다. 편집 컨트롤 형식은 소량의 텍스트에만 사용됩니다.
관련 속성
다음 표에서는 값 또는 정의가 편집 컨트롤과 특히 관련된 UI 자동화 속성을 나열합니다. UI 자동화 속성에 대한 자세한 내용은 UI 자동화 요소속성 검색을 참조하세요.
| UI 자동화 속성 | 값 | 노트 |
|---|---|---|
| UIA_AutomationIdPropertyId | 참고를 참조하세요. | 이 속성의 값은 UI 자동화 트리의 원시 뷰에 있는 모든 피어 요소 간에 고유해야 합니다. |
| UIA_BoundingRectanglePropertyId | 참고를 참조하세요. | 전체 컨트롤을 포함하는 가장 바깥쪽 사각형입니다. |
| UIA_ClickablePointPropertyId | 참고를 참조하세요. | 편집 컨트롤에는 사용자가 마우스를 클릭할 때 컨트롤의 편집 부분에 입력 포커스를 제공하는 클릭 가능한 지점이 있어야 합니다. |
| UIA_ControlTypePropertyId | 편집 | |
| UIA_IsContentElementPropertyId | TRUE | 편집 컨트롤은 항상 UI 자동화 트리의 콘텐츠 보기에 포함됩니다. |
| UIA_IsControlElementPropertyId | TRUE | 편집 컨트롤은 항상 UI 자동화 트리의 컨트롤 뷰에 포함됩니다. |
| UIA_IsKeyboardFocusablePropertyId | 참고를 참조하세요. | 컨트롤이 키보드 포커스를 받을 수 있는 경우 이 속성을 지원해야 합니다. |
| UIA_IsPasswordPropertyId | 참고를 참조하세요. | 암호를 포함하는 편집 컨트롤에서 TRUE 설정해야 합니다. 편집 컨트롤에 암호 내용이 포함된 경우 화면 읽기 프로그램에서 이 속성을 사용하여 사용자가 입력할 때 키 입력을 읽어야 하는지 여부를 결정할 수 있습니다. |
| UIA_LabeledByPropertyId | 참고를 참조하세요. | 컨트롤과 연결된 정적 텍스트 레이블이 있는 경우 이 속성은 해당 컨트롤에 대한 참조를 노출해야 합니다. 텍스트 컨트롤이 다른 컨트롤의 하위 구성 요소인 경우 LabeledBy 속성이 설정되지 않습니다. |
| UIA_LocalizedControlTypePropertyId | 참고를 참조하세요. | Edit 컨트롤 형식에 해당하는 지역화된 문자열입니다. 기본값은 en-US 또는 영어(미국)의 경우 "편집"입니다. |
| UIA_NamePropertyId | 참고를 참조하세요. | 편집 컨트롤의 이름은 일반적으로 정적 텍스트 레이블에서 생성됩니다. 정적 텍스트 레이블이 없는 경우 애플리케이션 개발자가 Name 속성 값을 할당해야 합니다. Name 속성에는 편집 컨트롤의 텍스트 내용이 포함되어서는 안 됩니다. |
필수 컨트롤 패턴
다음 표에서는 편집 컨트롤에서 지원하는 데 필요한 UI 자동화 컨트롤 패턴을 나열합니다. 컨트롤 패턴에 대한 자세한 내용은 UI 자동화 컨트롤 패턴 개요참조하세요.
| 컨트롤 패턴/패턴 속성 | 지원/값 | 노트 |
|---|---|---|
| IRangeValueProvider | 따라 달라 집니다 | 숫자 범위를 사용하는 모든 편집 컨트롤은 RangeValue 컨트롤 패턴을 노출해야 합니다. |
| 최소 | 참고를 참조하세요. | 이 속성은 편집 컨트롤의 내용을 설정할 수 있는 가장 작은 값이어야 합니다. |
| 최대 | 참고를 참조하세요. | 이 속성은 편집 컨트롤의 내용을 설정할 수 있는 가장 큰 값이어야 합니다. |
| smallChange | 참고를 참조하세요. | 이 속성은 값을 설정할 수 있는 소수 자릿수를 나타내야 합니다. 편집 컨트롤이 정수만 사용하는 경우 SmallChange 속성 값은 1이어야 합니다. 편집 컨트롤이 1.0에서 2.0까지의 범위를 사용하는 경우 SmallChange 속성 값은 0.1이어야 합니다. 편집 컨트롤이 1.00에서 2.00까지의 범위를 사용하는 경우 SmallChange 속성 값은 0.001이어야 합니다. |
| LargeChange | NULL | 이 속성은 편집 컨트롤에 노출될 필요가 없습니다. |
| 값 | 참고를 참조하세요. | 이 속성은 편집 컨트롤의 숫자 내용을 나타냅니다. 최소 지정된 범위 내에서 UI 자동화 클라이언트가 보다 정확한 값을 설정하고 최대속성을경우 Value 속성은 자동으로 가장 가까운 허용 값으로 반올림됩니다. |
| ITextProvider | 필수 | 모든 편집 컨트롤은 보조 기술 클라이언트에 대해 항상 자세한 정보를 사용할 수 있어야 하므로 텍스트 컨트롤 패턴을 지원해야 합니다. |
| IValueProvider | 따라 달라 집니다 | 문자열을 사용하는 모든 편집 컨트롤은 값 컨트롤 패턴을 노출해야 합니다. |
| isReadOnly | 참고를 참조하세요. | 컨트롤에 프로그래밍 방식으로 값을 설정할 수 있는지 또는 사용자가 편집할 수 있는지 여부를 나타내기 위해 이 속성을 설정해야 합니다. |
| 값 | 참고를 참조하세요. | 이 속성에는 편집 컨트롤의 텍스트 내용이 포함됩니다. UIA_IsPasswordPropertyId 속성이 TRUE 설정되면 Value 속성을 쿼리하면 오류가 반환됩니다. |
필수 이벤트
다음 표에서는 컨트롤을 편집하는 데 필요한 UI 자동화 이벤트를 나열합니다. 이벤트에 대한 자세한 내용은 UI 자동화 이벤트 개요참조하세요.
| UI 자동화 이벤트 | 노트 |
|---|---|
| UIA_AutomationFocusChangedEventId | |
| 속성 변경 이벤트를 UIA_BoundingRectanglePropertyId. | |
| 속성 변경 이벤트를 UIA_IsEnabledPropertyId. | 컨트롤이 IsEnabled 속성을 지원하는 경우 이 이벤트를 지원해야 합니다. |
| UIA_IsOffscreenPropertyId 속성 변경 이벤트입니다. | 컨트롤이 IsOffscreen 속성을 지원하는 경우 이 이벤트를 지원해야 합니다. |
| UIA_NamePropertyId 속성 변경 이벤트입니다. | |
| UIA_RangeValueValuePropertyId 속성 변경 이벤트입니다. | 컨트롤이 RangeValue 컨트롤 패턴을 지원하는 경우 이 이벤트를 지원해야 합니다. |
| 속성 변경 이벤트를 UIA_ScrollHorizontallyScrollablePropertyId. | 편집 컨트롤은 스크롤 컨트롤 패턴을 지원하지 않습니다. |
| UIA_ScrollHorizontalScrollPercentPropertyId 속성 변경 이벤트입니다. | 편집 컨트롤은 스크롤 컨트롤 패턴을 지원하지 않습니다. |
| UIA_ScrollHorizontalViewSizePropertyId 속성 변경 이벤트입니다. | 편집 컨트롤은 스크롤 컨트롤 패턴을 지원하지 않습니다. |
| UIA_ScrollVerticallyScrollablePropertyId 속성 변경 이벤트입니다. | 편집 컨트롤은 스크롤 컨트롤 패턴을 지원하지 않습니다. |
| UIA_ScrollVerticalScrollPercentPropertyId 속성 변경 이벤트입니다. | 편집 컨트롤은 스크롤 컨트롤 패턴을 지원하지 않습니다. |
| UIA_ScrollVerticalViewSizePropertyId 속성 변경 이벤트입니다. | 편집 컨트롤은 스크롤 컨트롤 패턴을 지원하지 않습니다. |
| UIA_StructureChangedEventId | |
| UIA_Text_TextChangedEventId | 컨트롤이 Text 컨트롤 패턴을 지원하는 경우 이 이벤트를 지원해야 합니다. |
| UIA_Text_TextSelectionChangedEventId | 컨트롤이 Text 컨트롤 패턴을 지원하는 경우 이 이벤트를 지원해야 합니다. |
| 속성 변경 이벤트를 UIA_ValueValuePropertyId. | 컨트롤이 Value 컨트롤 패턴을 지원하는 경우 이 이벤트를 지원해야 합니다. |
발언
편집 컨트롤은 텍스트 선택 또는 편집을 지원하지 않는 읽기 전용 텍스트 필드로 사용할 수 있습니다. 이러한 편집 컨트롤은 특정 이름과 값을 가진 필드 개체로 동작합니다.
편집 컨트롤에 자리 표시자 텍스트(예: 큐 배너)가 포함된 경우 사용자가 텍스트를 편집한 다음 자리 표시자 텍스트로 다시 사용할 수 없는 한 텍스트를 HelpText 속성으로 사용해야 합니다. 예를 들어 Windows Internet Explorer 주소 표시줄에는 새 탭이 열릴 때 "about:Tabs" 텍스트가 포함됩니다. 이 주소는 사용자가 사용하거나 편집할 수 있는 프로그래밍 방식 주소이므로 helpText 않습니다.
관련 항목