Share via


Tree 控制項類型的 UI 自動化支援

注意

本文件適用對象為 .NET Framework 開發人員,其想要使用 System.Windows.Automation 命名空間中定義的受控 UI 自動化類別。 如需 UI 自動化的最新資訊,請參閱 Windows 自動化 API:UI 自動化

本主題提供 Tree 控制項類型的 UI 自動化支援相關資訊。 在 UI 自動化中,控制項類型是一組控制項條件,控制項必須符合條件才能使用 ControlTypeProperty 屬性。 這些條件包括 UI 自動化樹狀結構的特定方針、UI 自動化屬性值和控制項模式。

Tree 控制項類型用於其內容的相關性如同節點階層的容器,而其顯示方式與 [Microsoft Windows 檔案總管] 左窗格顯示檔案和資料夾相同。 每個節點都可能包含其他節點,稱為子節點。 父節點或包含子節點的節點可以顯示為展開或摺疊。

下列章節會定義 Tree 控制項類型所需的 UI 自動化樹狀結構、屬性、控制項模式和事件。 UI 自動化需求適用於所有樹狀結構控制項,無論是 Windows Presentation Foundation (WPF)、Win32 或 Windows Forms。

必要的使用者介面自動化樹狀結構

下表描述屬於樹狀結構控制項之 UI 自動化樹狀結構的控制項檢視和內容檢視,並說明各檢視中可包含的內容。 如需 UI 自動化樹狀結構的詳細資訊,請參閱 UI 自動化樹狀結構概觀

控制項檢視 內容檢視
樹狀結構

  • DataItem (0 個以上)
  • TreeItem (0 個以上)

    • TreeItem (0 個以上)• …
  • 捲軸 (0、1、2 個)
樹狀結構

  • DataItem (0 個以上)
  • TreeItem (0 個以上)

    • TreeItem (0 個以上)• …

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

  • 在容器內的零到多個項目 (可以是樹狀結構項目、資料項目或其他控制項類型的項目)。

  • 0、1 或 2 個捲軸。

UI 自動化樹狀結構的內容檢視包含容器內的零或多個項目 (可以是樹狀結構項目、資料項目或其他控制項類型的項目)。

必要的使用者介面自動化屬性

下表列示 UI 自動化屬性,其值或定義與清單控制項特別有關。 如需 UI 自動化屬性的詳細資訊,請參閱用戶端的 UI 自動化屬性

使用者介面自動化屬性 備註
AutomationIdProperty 請參閱備註。 此屬性的值在應用程式中的所有控制項都不得重複。
BoundingRectangleProperty 請參閱備註。 包含整個控制項的最外層矩形。
ClickablePointProperty 請參閱備註。 樹狀結構控制項有可點選的點,可以讓焦點設在樹狀結構或樹狀結構容器中的某個項目。 只有在按一下某處而不會使其中一個項目變成選取或取得焦點時,樹狀結構才會有可點選的點。
ControlTypeProperty 樹狀結構 此值與所有使用者介面架構的值相同。
IsContentElementProperty True 此樹狀結構控制項一律包含在 UI 自動化樹狀結構的內容檢視。
IsControlElementProperty True 此樹狀結構控制項一律包含在 UI 自動化樹狀結構的控制項檢視。
IsKeyboardFocusableProperty 請參閱備註。 如果控制項可接收鍵盤焦點,就必定支援此屬性。
LabeledByProperty 請參閱備註。 如果樹狀結構控制項有相關聯的標籤,則此屬性會傳回該標籤的 AutomationElement 。 否則,屬性會傳回 null 參考 (在 Microsoft Visual Basic .NET 中為 Nothing)。
LocalizedControlTypeProperty 「樹狀結構」 對應到清單控制項類型的當地語系化字串。
NameProperty 請參閱備註。 樹狀結構控制項的名稱屬性值通常取自於控制項的標籤文字。 如果沒有文字標籤,則應用程式開發人員必須提供此屬性的值。

必要的使用者介面自動化控制項模式

下表列出清單控制項必需支援的 UI 自動化控制項模式。 如需控制項模式的詳細資訊,請參閱 UI Automation Control Patterns Overview

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

必要的使用者介面自動化事件

下表列出所有樹狀結構控制項必須支援的 UI 自動化事件。 如需事件的詳細資訊,請參閱 UI Automation Events Overview

UI 自動化事件 支援 備註
InvalidatedEvent 相依
BoundingRectangleProperty 屬性變更事件。 必要
IsOffscreenProperty 屬性變更事件。 必要
IsEnabledProperty 屬性變更事件。 必要
HorizontallyScrollableProperty 屬性變更事件。 相依
HorizontalScrollPercentProperty 屬性變更事件。 相依
HorizontalViewSizeProperty 屬性變更事件。 相依
VerticalScrollPercentProperty 屬性變更事件。 相依
VerticallyScrollableProperty 屬性變更事件。 相依
VerticalViewSizeProperty 屬性變更事件。 相依
AutomationFocusChangedEvent 必要
StructureChangedEvent 必要

另請參閱