ScrollBar 控制項類型的 UI 自動化支援
注意
本文件適用對象為 .NET Framework 開發人員,其想要使用 System.Windows.Automation 命名空間中定義的受控 UI 自動化類別。 如需 UI 自動化的最新資訊,請參閱 Windows 自動化 API:UI 自動化。
本主題提供捲軸控制項類型的 UI 自動化支援相關資訊。 在 UI 自動化中,控制項類型是一組控制項條件,控制項必須符合條件才能使用 ControlTypeProperty 屬性。 這些條件包括 UI 自動化樹狀結構、UI 自動化屬性值和控制項模式的特定指導方針。
捲軸控制項可讓使用者捲動視窗或項目容器內的內容。 此控制項由一組按鈕和一個縮圖控制項所組成。
下列章節會定義 ScrollBar 控制項類型所需的 UI 自動化樹狀結構、屬性、控制項模式與事件。 UI 自動化需求適用於所有清單控制項,無論是 Windows Presentation Foundation (WPF)、Win32 或 Windows Forms 皆然。
必要的使用者介面自動化樹狀結構
下表描述與捲軸控制項相關的 UI 自動化樹狀結構的內容檢視與控制項檢視,並說明各檢視中可包含的內容。 如需 UI 自動化樹狀結構的詳細資訊,請參閱 UI 自動化樹狀結構概觀。
控制項檢視 | 內容檢視 |
---|---|
ScrollBar - 按鈕 (2 或 4) - 縮圖 (0 或 1) |
不適用。 捲軸控制項不包含內容。 |
捲軸控制項一律有三到五個子系。 由於樹狀子目錄有一個以上的按鈕控制項,因此您必須將特定的 AutomationIdProperty 值設定給每個項目,以供測試自動化工具搜尋它們。
必要的使用者介面自動化屬性
下表列出的 UI 自動化屬性,其值或定義與捲軸控制項特別有關。 請注意,捲動控制項不會有內容,其功能是透過捲動控制項模式所公開,該模式則是透過捲動的容器所支援。
如需 UI 自動化屬性的詳細資訊,請參閱用戶端的 UI 自動化屬性。
使用者介面自動化屬性 | 值 | 備註 |
---|---|---|
AutomationIdProperty | 請參閱備註。 | 此屬性的值在應用程式中的所有控制項都不得重複。 |
BoundingRectangleProperty | 請參閱備註。 | 包含整個控制項的最外層矩形。 |
IsKeyboardFocusableProperty | 請參閱備註。 | 如果控制項可接收鍵盤焦點,就必定支援此屬性。 |
NameProperty | Null |
捲軸控制項沒有內容項目,因此無須設定 NameProperty 。 |
ClickablePointProperty | 不是數字。 | 捲軸控制項沒有可點選的點。 |
LabeledByProperty | Null |
捲軸沒有標籤。 |
ControlTypeProperty | ScrollBar | 此值與所有架構的值相同。 捲軸的作用與必須使用滑桿控制項類型的滑桿相同。 |
LocalizedControlTypeProperty | 「捲軸」 | 對應到按鈕控制項類型的當地語系化字串。 |
IsContentElementProperty | False | 捲軸控制項不是內容項目。 如果捲軸是獨立的控制項,則必須符合滑桿控制項類型,並傳回 ControlType.Slider 屬性的 ControlType 。 |
IsControlElementProperty | True | 捲軸必須一律為控制項。 |
OrientationProperty | True | 捲軸控制項必須一律公開其水平或垂直的方向。 |
必要的使用者介面自動化控制項模式
下表列出捲軸控制項必須支援的 UI 自動化控制項模式。 如需控制項模式的詳細資訊,請參閱 UI Automation Control Patterns Overview。 請注意,若捲軸僅當成是滑鼠操作的控制項,就不支援控制項模式。 如果當成應用程式內的滑桿控制項,則必須指定滑桿控制項類型。
控制項模式 | 支援 | 備註 |
---|---|---|
IScrollProvider | 永不 | 捲軸絕不會直接支援捲動控制項模式。 |
IRangeValueProvider | 相依 | 當具有捲軸的容器不支援捲動控制項模式時,才需要支援此功能。 |
必要的使用者介面自動化事件
下表列出所有捲軸控制項必須支援的 UI 自動化事件。 如需事件的詳細資訊,請參閱 UI Automation Events Overview。
UI 自動化事件 | 支援/值 | 備註 |
---|---|---|
BoundingRectangleProperty 屬性變更事件。 | 必要 | 無 |
IsOffscreenProperty 屬性變更事件。 | 必要 | 無 |
IsEnabledProperty 屬性變更事件。 | 必要 | 無 |
HorizontallyScrollableProperty 屬性變更事件。 | 永不 | 無 |
HorizontalScrollPercentProperty 屬性變更事件。 | 永不 | 無 |
HorizontalViewSizeProperty 屬性變更事件。 | 永不 | 無 |
VerticalScrollPercentProperty 屬性變更事件。 | 永不 | 無 |
VerticallyScrollableProperty 屬性變更事件。 | 永不 | 無 |
VerticalViewSizeProperty 屬性變更事件。 | 永不 | 無 |
ValueProperty 屬性變更事件。 | 相依 | 無 |
AutomationFocusChangedEvent | 必要 | 無 |
StructureChangedEvent | 必要 | 無 |