共用方式為


窗格控件類型的UI自動化支援

備註

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

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

Pane 控制項類型是用來代表框架或文件視窗中的物件。 用戶可以在窗格控件和目前窗格的內容之間巡覽,但無法在不同窗格中的項目之間巡覽。 因此,窗格控件代表群組層級低於視窗或檔,但高於個別控件。 根據內容,使用者按下 TAB、F6 或 CTRL+TAB,在窗格之間巡覽。 窗格控制類型不需要特定的鍵盤導覽。

下列各節會定義窗格控件類型所需的UI自動化樹狀結構、屬性、控件模式和事件。 使用者介面自動化需求適用於所有清單控件,無論是 Windows Presentation Foundation (WPF)、Win32 還是 Windows Forms。

必要的 UI 自動化樹狀結構

下表描述與窗格控件相關的UI自動化樹狀結構的控件檢視和內容檢視,並描述每個檢視中可包含的內容。 如需UI自動化樹狀結構的詳細資訊,請參閱 UI自動化樹狀結構概觀

控制項檢視 內容檢視
面板 面板

必要的UI自動化屬性

下表列出UI自動化屬性,其值或定義與窗格控件特別相關。 如需 UI 自動化屬性的詳細資訊,請參閱用戶端的 UI 自動化屬性

UI 自動化屬性 價值觀 註釋
AutomationIdProperty 請參閱備註。 這個屬性的值在應用程式中的所有控件中必須是唯一的。
BoundingRectangleProperty 請參閱備註。 包含整個控制項的最外層矩形。
IsKeyboardFocusableProperty 請參閱備註。 如果控制項可接收鍵盤焦點,就必定支援此屬性。
NameProperty 請參閱備註。 此屬性的值一律必須是清楚、簡潔且有意義的標題。
ClickablePointProperty 請參閱備註。 這個屬性會公開窗格控件的可點選點,讓窗格在單擊時變成焦點。
LabeledByProperty 請參閱備註。 窗格控件通常沒有靜態標籤。 如果有靜態文字標籤,則應該透過這個屬性公開它。
ControlTypeProperty 面板 此值與所有使用者介面架構的值相同。
LocalizedControlTypeProperty “pane” 對應 Pane 控制項類型的在地語系化字串。
IsContentElementProperty 窗格控件一律包含在UI自動化樹狀結構的內容檢視中。
IsControlElementProperty 窗格控件一律包含在 UI 自動化樹的控件檢視中。
HelpTextProperty "" 窗格控件的說明文字應該說明框架的目的,以及它與其他畫面格的關聯性。 如果框架的用途和關聯性無法從的值 NameProperty中清楚,則需要描述。 "
AccessKeyProperty 請參閱備註。 如果特定按鍵組合將焦點提供給窗格,則應該透過這個屬性公開該資訊。

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

下表列出所有窗格控件都必須支援的UI自動化控制件模式。 如需控制樣式的詳細資訊,請參閱 UI 自動化控制樣式概觀

控制件模式 支援 註釋
ITransformProvider 視情況而定 如果窗格控件可以在螢幕上移動、重設大小或旋轉,請實作此控件模式。
IWindowProvider 從不 如果您需要實作此控制項模式,您的控制項應該以控件類型為基礎 Window
IDockProvider 視情況而定 如果窗格控制項可以停駐,請實作此控制模式。
IScrollProvider 視情況而定 如果窗格控件可以捲動,請實作此控件模式。

必要的UI自動化事件

下表列出所有窗格控件都必須支援的UI自動化事件。 如需事件的詳細資訊,請參閱 UI Automation Events Overview

UI 自動化事件 支援/值 註釋
WindowClosedEvent 從不 沒有
WindowOpenedEvent 從不 沒有
AsyncContentLoadedEvent 為必填項目 沒有
BoundingRectangleProperty 屬性變更事件。 為必填項目 沒有
IsOffscreenProperty 屬性變更事件。 為必填項目 沒有
IsEnabledProperty 屬性變更事件。 為必填項目 沒有
HorizontallyScrollableProperty 屬性變更事件。 視情況而定 沒有
HorizontalScrollPercentProperty 屬性變更事件。 視情況而定 沒有
HorizontalViewSizeProperty 屬性變更事件。 視情況而定 沒有
VerticalScrollPercentProperty 屬性變更事件。 視情況而定 沒有
VerticallyScrollableProperty 屬性變更事件。 視情況而定 沒有
VerticalViewSizeProperty 屬性變更事件。 視情況而定 沒有
WindowVisualStateProperty 屬性變更事件。 從不 沒有
AutomationFocusChangedEvent 為必填項目 沒有
StructureChangedEvent 為必填項目 沒有

窗格控件類型範例

下圖說明實作Pane控件類型的控制件。

小程式視窗的螢幕快照,包含兩個窗格

UI 自動化樹狀目錄 - 控件檢視 UI 自動化樹狀目錄 - 內容檢視
  • 面板
  • 樹狀結構(捲動模式)

    • TreeItem
    • 面板
    • 編輯 (滾動圖案)
-窗格
- 樹狀結構(捲動模式)
- TreeItem
- …窗格
-編輯
-(捲動樣式)

另請參閱