다음을 통해 공유


일정 컨트롤 유형

이 항목에서는 일정 컨트롤 형식에 대한 Microsoft UI 자동화 지원에 대한 정보를 제공합니다. 달력 컨트롤을 사용하면 사용자가 날짜를 쉽게 확인하고 다른 날짜를 선택할 수 있습니다.

다음 섹션에서는 달력 컨트롤 형식에 필요한 UI 자동화 트리 구조, 속성, 컨트롤 패턴 및 이벤트를 정의합니다. UI 자동화 요구 사항은 UI 프레임워크/플랫폼이 컨트롤 형식 및 컨트롤 패턴에 대한 UI 자동화 지원을 통합하는 모든 일정 컨트롤에 적용됩니다.

이 항목에는 다음과 같은 섹션이 포함되어 있습니다.

일반적인 트리 구조

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

컨트롤 뷰 콘텐츠 뷰
  • 달력
    • DataGrid
      • Header(0 또는 1개)
        • HeaderItem(0 또는 7, 수량은 열에 표시되는 일 수에 따라 다름)
      • ListItem(표시되는 일 수에 따라 수량이 다름)
      • Button(0 또는 2개, 일정 뷰를 페이징하는 데 사용됨)
  • 달력
    • ListItem(표시되는 일 수에 따라 수량이 다름)

 

일정 컨트롤은 사용자 인터페이스 내에서 여러 형식으로 나타낼 수 있습니다. UI 자동화 트리의 컨트롤 뷰에 있는 유일한 컨트롤은 데이터 그리드, 헤더, 헤더 항목 및 목록 항목 컨트롤입니다.

관련 속성

다음 표에서는 값 또는 정의가 특히 Calendar 컨트롤 형식과 관련된 UI 자동화 속성을 나열합니다. UI 자동화 속성에 대한 자세한 내용은 UI 자동화 요소에서 속성 검색을 참조하세요.

UI 자동화 속성 참고
UIA_AutomationIdPropertyId 메모를 참조하세요. 이 속성의 값은 UI 자동화 트리의 원시 뷰에 있는 모든 피어 요소에서 고유해야 합니다.
UIA_BoundingRectanglePropertyId 메모를 참조하세요. 전체 컨트롤이 포함된 가장 바깥쪽 사각형입니다.
UIA_ClickablePointPropertyId 메모를 참조하세요. 경계 사각형이 없는 경우 지원됩니다. 경계 사각형 내의 모든 지점을 클릭할 수 없는 경우 요소는 특수 적중 테스트를 수행하고, 재정의하고, 클릭 가능한 지점을 제공합니다.
UIA_ControlTypePropertyId 캘린더 이 값은 모든 UI 프레임워크에 대해 동일합니다.
UIA_IsContentElementPropertyId TRUE Calendar 컨트롤은 항상 UI 자동화 트리의 콘텐츠 보기에 포함됩니다.
UIA_IsControlElementPropertyId TRUE Calendar 컨트롤은 항상 UI 자동화 트리의 컨트롤 보기에 포함됩니다.
UIA_IsKeyboardFocusablePropertyId 메모를 참조하세요. 컨트롤이 키보드 포커스를 받을 수 있으면 해당 컨트롤은 이 속성을 지원해야 합니다.
UIA_LabeledByPropertyId 메모를 참조하세요. 이 속성의 값은 문서 컨트롤의 레이블이어야 합니다. 일반적으로 문서의 제목이 사용됩니다.
UIA_LocalizedControlTypePropertyId 메모를 참조하세요. 일정 컨트롤 형식에 해당하는 지역화된 문자열입니다. 기본값은 en-US 또는 영어(미국)의 경우 "calendar"입니다.
UIA_NamePropertyId 메모를 참조하세요. 달력 컨트롤은 일반적으로 현재 날짜에서 해당 이름을 가져옵니다.

 

필수 컨트롤 패턴

다음 표에서는 모든 Calendar 컨트롤에서 지원되는 데 필요한 UI 자동화 컨트롤 패턴을 나열하여 보여 줍니다. 컨트롤 패턴에 대한 자세한 내용은 UI Automation Control Patterns Overview를 참조하세요.

컨트롤 패턴/패턴 속성 지원/값 참고
IGridProvider 필수 달력 컨트롤은 한 달 이내의 날짜가 공간적으로 탐색할 수 있는 항목이므로 항상 Grid 컨트롤 패턴을 지원합니다.
IScrollProvider 개체 대부분의 일정 컨트롤은 페이지를 기준으로 뷰 대칭 이동을 지원합니다. 페이징 탐색을 지원하려면 스크롤 컨트롤 패턴을 사용하는 것이 좋습니다.
ISelectionProvider 개체 대부분의 일정 컨트롤은 하위 요소의 선택 항목으로 특정 날짜, 월 또는 연도를 유지합니다. 일부 일정은 다중 선택 가능하고 다른 일정만 선택할 수 있습니다. 선택 가능한 하위 항목이 있는 일정 컨트롤은 선택 컨트롤 패턴을 지원해야 합니다.
ITableProvider 필수 일정 컨트롤에는 항상 요일 동안 하위 트리 내에 헤더가 있으므로 테이블 컨트롤 패턴이 지원되어야 합니다.
IValueProvider No 요소가 컨트롤에서 직접 값을 설정할 수 없으므로 달력 컨트롤에는 컨트롤 패턴이 필요하지 않습니다. 특정 날짜가 컨트롤과 연결된 경우 선택 컨트롤 패턴에서 정보를 제공해야 합니다.

 

필요한 이벤트

다음 표에서는 달력 컨트롤이 지원하는 데 필요한 UI 자동화 이벤트를 나열합니다. 이벤트에 대한 자세한 내용은 UI Automation Events Overview를 참조하세요.

UI 자동화 이벤트 참고
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId 속성 변경 이벤트입니다.
UIA_IsEnabledPropertyId 속성 변경 이벤트입니다. 컨트롤이 IsEnabled 속성을 지원하는 경우 이 이벤트를 지원해야 합니다.
속성 변경 이벤트를 UIA_IsOffscreenPropertyId. 컨트롤이 IsOffscreen 속성을 지원하는 경우 이 이벤트를 지원해야 합니다.
UIA_LayoutInvalidatedEventId
속성 변경 이벤트를 UIA_MultipleViewCurrentViewPropertyId. 컨트롤이 MultipleView 컨트롤 패턴의 CurrentView 속성을 지원하는 경우 이 이벤트를 지원해야 합니다.
UIA_StructureChangedEventId
속성 변경 이벤트를 UIA_ScrollHorizontallyScrollablePropertyId. 컨트롤이 스크롤 컨트롤 패턴을 지원하는 경우 이 이벤트를 지원해야 합니다.
속성 변경 이벤트를 UIA_ScrollHorizontalScrollPercentPropertyId. 컨트롤이 스크롤 컨트롤 패턴을 지원하는 경우 이 이벤트를 지원해야 합니다.
속성 변경 이벤트를 UIA_ScrollHorizontalViewSizePropertyId. 컨트롤이 스크롤 컨트롤 패턴을 지원하는 경우 이 이벤트를 지원해야 합니다.
속성 변경 이벤트를 UIA_ScrollVerticalScrollPercentPropertyId. 컨트롤이 스크롤 컨트롤 패턴을 지원하는 경우 이 이벤트를 지원해야 합니다.
속성 변경 이벤트를 UIA_ScrollVerticallyScrollablePropertyId. 컨트롤이 스크롤 컨트롤 패턴을 지원하는 경우 이 이벤트를 지원해야 합니다.
속성 변경 이벤트를 UIA_ScrollVerticalViewSizePropertyId. 컨트롤이 스크롤 컨트롤 패턴을 지원하는 경우 이 이벤트를 지원해야 합니다.
UIA_Selection_InvalidatedEventId

 

개념

UI 자동화 컨트롤 형식 개요

UI 자동화 개요