行事曆控制項類型

本主題提供行事控制項類型之 Microsoft 消費者介面自動化支援的相關資訊。 行事曆控制項可讓使用者輕鬆判斷日期,並選取其他日期。

下列各節會定義行事曆控制項類型所需的樹狀結構、屬性、控制項模式和事件消費者介面自動化。 消費者介面自動化需求適用于 UI 架構/平臺整合消費者介面自動化控制項類型和控制項模式支援的所有行事曆控制項。

本主題包含下列各節。

一般樹狀結構

下表描述與行事曆控制項相關的消費者介面自動化樹狀結構的典型控制項和內容檢視,並描述每個檢視中可包含的內容。 如需 UI 自動化樹狀結構的詳細資訊,請參閱 UI 自動化樹狀結構概觀

控制項檢視 內容檢視
  • Calendar
    • DataGrid
      • 標題 (0 或 1)
        • HeaderItem (0 或 7,數量取決於資料行中顯示的天數)
      • ListItem (數量取決於要顯示多少天)
      • 按鈕 (0 或 2;用於分頁月曆檢視)
  • Calendar
    • ListItem (數量取決於要顯示多少天)

 

月曆控制項可以在使用者介面中以許多不同的形式來表示。 保證位於消費者介面自動化樹狀結構的控制項檢視中的唯一控制項是資料格、標頭、標頭專案和清單專案控制項。

相關屬性

下表列出與行事曆控制項類型特別相關的消費者介面自動化屬性。 如需消費者介面自動化屬性的詳細資訊,請參閱從 消費者介面自動化 Elements 擷取屬性

使用者介面自動化屬性 注意
UIA_AutomationIdPropertyId 請參閱備註。 此屬性的值在消費者介面自動化樹狀結構的原始檢視中,所有對等專案都必須是唯一的。
UIA_BoundingRectanglePropertyId 請參閱備註。 包含整個控制項的最外層矩形。
UIA_ClickablePointPropertyId 請參閱備註。 如果有週框即受支援。 如果周框內的每個點都無法點選,且元素會執行特製化點擊測試,請覆寫並提供可點選的點。
UIA_ControlTypePropertyId Calendar 此值與所有使用者介面架構的值相同。
UIA_IsContentElementPropertyId true 此行事曆控制項一律包含在 UI 自動化樹狀結構的內容檢視中。
UIA_IsControlElementPropertyId true 此行事曆控制項一律包含在 UI 自動化樹狀結構的控制項檢視中。
UIA_IsKeyboardFocusablePropertyId 請參閱備註。 如果控制項可接收鍵盤焦點,就必定支援此屬性。
UIA_LabeledByPropertyId 請參閱備註。 這個屬性的值應該是文件控制項的標籤。 通常會使用文件的標題。
UIA_LocalizedControlTypePropertyId 請參閱備註。 對應至 行事曆 控制項類型的當地語系化字串。 en-US 或英文 (美國) 的預設值為 「calendar」。
UIA_NamePropertyId 請參閱備註。 行事曆控制項通常會從目前日期取得其名稱。

 

必要的控制項模式

下表列出所有行事曆控制項都必須支援的 UI 自動化控制項模式。 如需控制項模式的詳細資訊,請參閱 UI Automation Control Patterns Overview

控制項模式/模式屬性 支援/值 備註
IGridProvider 必要 行事曆控制項一律支援 Grid 控制項模式,因為月份內的天數是可以空間流覽的專案。
IScrollProvider 相依 大部分的月曆控制項都支援依頁面翻閱檢視。 建議 使用卷 動控制項模式以支援分頁流覽。
ISelectionProvider 相依 大部分的行事曆控制項都會保留特定日期、月份或年份作為子項目的選取專案。 有些行事曆是多重選取的,而其他只有單一可選取。 具有可選取子項目的行事曆控制項應該支援 選取 控制項模式。
ITableProvider 必要 因為行事曆控制項在其子樹中一律有一個標頭,所以必須支援 資料表 控制項模式。
IValueProvider No 行事曆控制項不需要 Value 控制項模式,因為元素無法直接在控制項上設定值。 如果特定日期與控制項相關聯,則應該由 選取 控制項模式提供資訊。

 

必要的事件

下表列出行事曆控制項支援所需的消費者介面自動化事件。 如需 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 屬性變更事件。 如果控制項支援 Scroll 控制項模式,它必須支援這個事件。
UIA_ScrollHorizontalScrollPercentPropertyId 屬性變更事件。 如果控制項支援 Scroll 控制項模式,它必須支援這個事件。
UIA_ScrollHorizontalViewSizePropertyId 屬性變更事件。 如果控制項支援 Scroll 控制項模式,它必須支援這個事件。
UIA_ScrollVerticalScrollPercentPropertyId 屬性變更事件。 如果控制項支援 Scroll 控制項模式,它必須支援這個事件。
UIA_ScrollVerticallyScrollablePropertyId 屬性變更事件。 如果控制項支援 Scroll 控制項模式,它必須支援這個事件。
UIA_ScrollVerticalViewSizePropertyId 屬性變更事件。 如果控制項支援 Scroll 控制項模式,它必須支援這個事件。
UIA_Selection_InvalidatedEventId

 

概念

UI 自動化控制項類型概觀

UI 自動化概觀