日历控件类型
本主题提供有关 日历 控件类型的Microsoft UI 自动化支持的信息。 日历控件允许用户轻松确定日期并选择其他日期。
以下各节定义 日历 控件类型所需的 UI 自动化树结构、属性、控件模式和事件。 UI 自动化要求适用于 UI 框架/平台为控件类型和控件模式集成 UI 自动化支持的所有日历控件。
本主题包含以下部分。
典型树结构
下表描述了与日历控件相关的 UI 自动化树的典型控件和内容视图,并描述了每个视图中可包含的内容。 有关 UI 自动化树的详细信息,请参阅 UI 自动化树概述。
控件视图 | 内容视图 |
---|---|
|
|
日历控件可以以用户界面中的多种不同形式表示。 保证在 UI 自动化树的控件视图中的唯一控件是数据网格、标头项和列表项控件。
相关属性
下表列出了其值或定义与日历 控件类型 特别相关的 UI 自动化属性。 有关 UI 自动化属性的详细信息,请参阅 从 UI 自动化元素检索属性。
UI 自动化属性 | 价值 | 笔记 |
---|---|---|
UIA_AutomationIdPropertyId | 请参阅备注。 | 此属性的值在 UI 自动化树的原始视图中的所有对等元素中必须是唯一的。 |
UIA_BoundingRectanglePropertyId | 请参阅备注。 | 包含整个控件的最外侧矩形。 |
UIA_ClickablePointPropertyId | 请参阅备注。 | 如果存在边界矩形,则受支持。 如果边界矩形中的每个点都不可单击,并且该元素执行专用命中测试,请重写并提供可单击点。 |
UIA_ControlTypePropertyId | 日历 | 对于所有 UI 框架,此值相同。 |
UIA_IsContentElementPropertyId | 真 | 日历控件始终包含在 UI 自动化树的内容视图中。 |
UIA_IsControlElementPropertyId | 真 | 日历控件始终包含在 UI 自动化树的控件视图中。 |
UIA_IsKeyboardFocusablePropertyId | 请参阅备注。 | 如果控件可以接收键盘焦点,它必须支持此属性。 |
UIA_LabeledByPropertyId | 请参阅备注。 | 此属性的值应为文档控件的标签。 通常,使用文档的标题。 |
UIA_LocalizedControlTypePropertyId | 请参阅备注。 | 对应于 日历 控件类型的本地化字符串。 默认值为 en-US 或英语(美国)的“日历”。 |
UIA_NamePropertyId | 请参阅备注。 | 日历控件通常从当前日期获取其名称。 |
所需的控件模式
下表列出了所有日历控件支持所需的 UI 自动化控件模式。 有关控件模式的详细信息,请参阅 UI 自动化控件模式概述。
控件模式/模式属性 | 支持/值 | 笔记 |
---|---|---|
IGridProvider | 必填 | 日历控件始终支持 网格 控件模式,因为一个月内的天数是可以空间导航的项目。 |
IScrollProvider | 取决于 | 大多数日历控件都支持按页面翻转视图。 建议使用 Scroll 控件模式来支持分页导航。 |
ISelectionProvider | 取决于 | 大多数日历控件保留特定的日期、月或年作为子元素的选择。 某些日历是多选日历,而其他只有单选日历。 具有可选子元素的日历控件应支持 选择 控件模式。 |
ITableProvider | 必填 | 由于日历控件在其子树中始终有一个标题,因此必须支持 表 控件模式。 |
IValueProvider | 不 | 日历控件不需要 值 控件模式,因为元素无法直接在控件上设置值。 如果特定日期与控件相关联,则 选择 控件模式应提供信息。 |
必需事件
下表列出了日历控件需要支持的 UI 自动化事件。 有关事件的详细信息,请参阅 UI 自动化事件概述。
UI 自动化事件 | 笔记 |
---|---|
UIA_AutomationFocusChangedEventId | |
UIA_BoundingRectanglePropertyId 属性更改事件。 | |
UIA_IsEnabledPropertyId 属性更改事件。 | 如果控件支持 IsEnabled 属性,则必须支持此事件。 |
UIA_IsOffscreenPropertyId 属性更改事件。 | 如果控件支持 IsOffscreen 属性,则必须支持此事件。 |
UIA_LayoutInvalidatedEventId | |
UIA_MultipleViewCurrentViewPropertyId 属性更改事件。 | 如果控件支持 MultipleView 控件模式的 CurrentView 属性,则必须支持此事件。 |
UIA_StructureChangedEventId | |
UIA_ScrollHorizontallyScrollablePropertyId 属性更改事件。 | 如果控件支持 Scroll 控件模式,则必须支持此事件。 |
UIA_ScrollHorizontalScrollPercentPropertyId 属性更改事件。 | 如果控件支持 Scroll 控件模式,则必须支持此事件。 |
UIA_ScrollHorizontalViewSizePropertyId 属性更改事件。 | 如果控件支持 Scroll 控件模式,则必须支持此事件。 |
UIA_ScrollVerticalScrollPercentPropertyId 属性更改事件。 | 如果控件支持 Scroll 控件模式,则必须支持此事件。 |
UIA_ScrollVerticallyScrollablePropertyId 属性更改事件。 | 如果控件支持 Scroll 控件模式,则必须支持此事件。 |
UIA_ScrollVerticalViewSizePropertyId 属性更改事件。 | 如果控件支持 Scroll 控件模式,则必须支持此事件。 |
UIA_Selection_InvalidatedEventId |
相关主题