SemanticZoom 控制項類型
本主題提供 SemanticZoom 控制項類型的 UI 自動化支援相關資訊。
語意式縮放是在 Windows 8 中引進的技術,可用來呈現和流覽單一檢視內的大型相關資料或內容集,例如相片簿、應用程式清單或通訊錄。 語意式縮放使用兩種不同的分類模式或 縮放層級來組織和呈現內容。 低階 (或 放大) 模式會顯示一般「全部」結構中的專案;和高層級 (或 縮小) 模式會顯示群組中的專案,讓使用者快速流覽和流覽內容。 例如,縮放城市清單可能會變更為包含這些城市的狀態清單。 縮放程式清單可能會變更為邏輯程式群組的清單。
如需特別用於 Windows 市集應用程式之語意式縮放的詳細資訊,請參閱 語意式縮放的指導方針。
SemanticZoom控制項類型的使用模型不尋常,因為它主要適用于程式設計存取。 Microsoft UI 自動化用戶端可以監視及操作語意式縮放控制項,以控制清單的縮放狀態。 未使用輔助技術的使用者通常會透過觸控手勢或鍵盤快速鍵直接操作語意式縮放控制項。
下列各節會定義 SemanticZoom 控制項類型所需的 UI 自動化樹狀結構、屬性、控制項模式和事件。 使用者介面自動化需求適用于所有語意式縮放控制項,其中 UI 架構/平臺會整合控制項類型和控制項模式的 UI 自動化支援。
本主題包含下列各節。
一般樹狀結構
下表描述與 SemanticZoom 控制項類型相關的 UI 自動化樹狀結構的一般控制項和內容檢視,並描述每個檢視中可包含的內容。 如需 UI 自動化樹狀結構的詳細資訊,請參閱 UI 自動化樹狀結構概觀。
控制項檢視 | 內容檢視 |
---|---|
|
|
或:
控制項檢視 | 內容檢視 |
---|---|
|
|
相關屬性
下表列出 UI 自動化屬性,其值或定義與實作 SemanticZoom 控制項類型的控制項特別相關。 如需 UI 自動化屬性的詳細資訊,請參閱 從 UI 自動化元素擷取屬性。
使用者介面自動化屬性 | 值 | 注意 |
---|---|---|
UIA_AutomationIdPropertyId | 請參閱備註。 | 此屬性的值在 UI 自動化樹狀結構的原始檢視中,所有對等專案都必須是唯一的。 |
UIA_BoundingRectanglePropertyId | 請參閱備註。 | 包含整個控制項的最外層矩形。 |
UIA_ClickablePointPropertyId | 請參閱備註。 | 如果清單控制項有可點選的點 (可以按一下以讓清單取得焦點) ,則必須透過此屬性公開該點。 如果 UIA_IsOffscreenPropertyId 屬性值為 TRUE,則嘗試擷取此屬性會導致 UIA_E_NOCLICKABLEPOINT 錯誤。 |
UIA_ControlTypePropertyId | SemanticZoom | |
UIA_IsContentElementPropertyId | true | |
UIA_IsControlElementPropertyId | true | |
UIA_IsKeyboardFocusablePropertyId | false | |
UIA_LabeledByPropertyId | 請參閱備註。 | 如果有靜態文字標籤,此屬性必須公開該控制項的參考。 |
UIA_LocalizedControlTypePropertyId | 請參閱備註。 | 對應至 SemanticZoom 控制項類型的當地語系化字串。 預設值為 en-US 或英文 (美國) 的「語意式縮放」。
注意: 某些架構會串連此架構為 「semanticzoom」。 |
UIA_NamePropertyId | 請參閱備註。 | 只要空字串不包含語意式縮放一詞,就可以接受空字串或更實用的名稱,這會使控制項類型和名稱的組合混淆。 |
必要的控制項模式和屬性
下表列出所有語意式縮放控制項必須支援的 UI 自動化控制項模式。 如需控制項模式的詳細資訊,請參閱 UI Automation Control Patterns Overview。
控制項模式/模式屬性 | 支援/值 | 備註 |
---|---|---|
IToggleProvider | 相依 | 語意式縮放控制項支援 切換 控制項模式,以允許啟用或停用縮放。 ToggleState_Off 對應至一般、全部向上狀態, 而ToggleState_On 對應至高階縮小檢視。 |
必要的事件
下表列出語意式縮放控制項需要支援的 UI 自動化事件。 如需 UI Automation Events Overview事件的詳細資訊,請參閱
UI 自動化事件 | 備註 |
---|---|
UIA_BoundingRectanglePropertyId 屬性變更事件。 | |
UIA_IsEnabledPropertyId 屬性變更事件。 | 如果控制項支援 IsEnabled 屬性,它必須支援這個事件。 |
UIA_IsOffscreenPropertyId 屬性變更事件。 | 如果控制項支援 IsOffscreen 屬性,它必須支援此事件。 |
UIA_ToggleToggleStatePropertyId 屬性變更事件。 |
備註
如果 UI 具有可切換語意縮放控制項行為的可見按鈕,則此按鈕不應該有 SemanticZoom 控制項類型。 這是計數器直覺的,但 SemanticZoom 控制項類型會描述縮放內容的容器,而不是控制縮放的按鈕。 (這類按鈕只能以切換控制項模式的按鈕控制項類型來表示。)