樹狀結構控制項類型

本主題提供狀結構控制項類型的 Microsoft 消費者介面自動化支援相關資訊。

狀結構控制項類型用於內容具有相關性作為節點階層的容器,如同檔案和資料夾顯示在 Windows 檔案總管左窗格中的方式一樣。 每個節點都可能包含其他節點,稱為子節點。 父節點或包含子節點的節點可以顯示為展開或摺疊。 WC_TREEVIEW) 所識別的 Windows 樹狀檢視控制項 (是屬於結構控制項類型的控制項範例。

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

本主題包含下列各節。

一般樹狀結構

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

控制項檢視 內容檢視
  • 樹狀結構
    • DataItem (0 個以上)
    • TreeItem (0 個以上)
      • TreeItem (0 個以上)
        • ...
    • 捲軸 (0、1、2 個)
  • 樹狀結構
    • DataItem (0 個以上)
    • TreeItem (0 個以上)
      • TreeItem (0 個以上)
        • ...

 

UI 自動化樹狀結構的控制項檢視包含:

  • 容器內 (專案的零,可以根據 TreeItemDataItem 控制項類型) 。
  • 0、1 或 2 個捲軸控制項

消費者介面自動化樹狀結構的內容檢視是由容器內零或多個專案所組成, (專案可以根據TreeItemDataItem控制項類型) 。

相關屬性

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

使用者介面自動化屬性 注意
UIA_AutomationIdPropertyId 請參閱備註。 此屬性的值在消費者介面自動化樹狀結構的原始檢視中,所有對等專案都必須是唯一的。
UIA_BoundingRectanglePropertyId 請參閱備註。 包含整個控制項的最外層矩形。
UIA_ClickablePointPropertyId 請參閱備註。 樹狀結構控制項具有可點選的點,會導致樹狀結構容器中的樹狀結構或其中一個專案接收焦點。 只有當樹狀結構控制項可以按一下樹狀結構中的位置,而不會選取專案或接收焦點時,樹狀結構控制項才能有可點選的點。
UIA_ControlTypePropertyId 樹狀結構 此值與所有使用者介面架構的值相同。
UIA_IsContentElementPropertyId true 此樹狀結構控制項一律包含在 UI 自動化樹狀結構的內容檢視。
UIA_IsControlElementPropertyId true 此樹狀結構控制項一律包含在 UI 自動化樹狀結構的控制項檢視。
UIA_IsKeyboardFocusablePropertyId 請參閱備註。 如果控制項可接收鍵盤焦點,就必定支援此屬性。
UIA_LabeledByPropertyId 請參閱備註。 如果樹狀結構控制項有與其相關聯的標籤,這個屬性會傳回該標籤的 IUIAutomationElement 指標。 否則,屬性會傳回 Null 參考。
UIA_LocalizedControlTypePropertyId 請參閱備註。 對應至 狀目錄控制項類型的當地語系化字串。 en-US 或英文 (美國) 的預設值為 「樹狀結構」。
UIA_NamePropertyId 請參閱備註。 樹狀結構控制項的名稱屬性值通常取自於控制項的標籤文字。 如果沒有文字標籤,您必須提供此屬性的值。

 

必要的控制項模式

下表列出所有樹狀控制項必須支援的消費者介面自動化控制項模式。 如需控制項模式的詳細資訊,請參閱 UI Automation Control Patterns Overview

控制項模式/模式屬性 支援/值 備註
IScrollProvider 相依 如果樹狀結構容器中的專案可以捲動,請實作 動控制項模式。
ISelectionProvider 相依 包含一組可選取專案的樹狀目錄控制項必須實作 選取 控制項模式。 如果選取專案不會向使用者傳達有意義的資訊,則不需要實作它。
CanSelectMultiple 請參閱備註。 如果樹狀結構控制項支援多重選取 (大多數樹狀結構控制項並不支援多重選取),即實作此屬性。
IsSelectionRequired 請參閱備註。 如果控制項需要選取項目,則會公開此屬性的值。

 

必要的事件

下表列出所有樹狀目錄控制項都必須支援的消費者介面自動化事件。 如需 UI Automation Events Overview事件的詳細資訊,請參閱

UI 自動化事件 備註
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId 屬性變更事件。
UIA_IsEnabledPropertyId 屬性變更事件。 如果控制項支援 IsEnabled 屬性,它必須支援這個事件。
UIA_IsOffscreenPropertyId 屬性變更事件。 如果控制項支援 IsOffscreen 屬性,它必須支援此事件。
UIA_ScrollHorizontallyScrollablePropertyId 屬性變更事件。 如果控制項支援 Scroll 控制項模式,它必須支援這個事件。
UIA_ScrollHorizontalScrollPercentPropertyId 屬性變更事件。 如果控制項支援 Scroll 控制項模式,它必須支援這個事件。
UIA_ScrollHorizontalViewSizePropertyId 屬性變更事件。 如果控制項支援 Scroll 控制項模式,它必須支援這個事件。
UIA_ScrollVerticalScrollPercentPropertyId 屬性變更事件。 如果控制項支援 Scroll 控制項模式,它必須支援這個事件。
UIA_ScrollVerticallyScrollablePropertyId 屬性變更事件。 如果控制項支援 Scroll 控制項模式,它必須支援這個事件。
UIA_ScrollVerticalViewSizePropertyId 屬性變更事件。 如果控制項支援 Scroll 控制項模式,它必須支援這個事件。
UIA_Selection_InvalidatedEventId 如果控制項支援 Selection 控制項模式,它必須支援這個事件。
UIA_StructureChangedEventId

 

概念

UI 自動化控制項類型概觀

UI 自動化概觀