UI 自動化控制項模式概觀
控制項模式是介面實作,會將控制項功能的特定層面公開給 Microsoft 消費者介面自動化用戶端應用程式。 用戶端會使用透過控制項模式公開的屬性和方法,擷取控制項特定功能的相關資訊,或操作控制項行為的特定層面。 例如,呈現表格式介面的控制項會使用 Grid 控制項模式來公開資料表中的資料列和資料行數目,以及讓用戶端從資料表擷取專案。
UI 自動化會使用控制項模式來代表通用控制項行為。 例如,針對可叫用的控制項使用 叫 用控制項模式,例如按鈕,以及具有捲軸之控制項的 卷 動控制項模式,例如清單方塊、清單檢視或下拉式方塊。 因為每個控制項模式都代表個別的功能,所以可以結合控制項模式來描述特定控制項所支援的完整功能集。
注意
匯總控制項是使用子控制項所建置,以提供由父代公開之功能的使用者介面,而且父控制項應該實作通常與其子控制項相關聯的所有控制項模式。 然後相同的控制項模式便不需要由子控制項所實作。
本主題包含下列幾節:
使用者介面自動化控制項模式元件
控制項模式支援定義控制項中可用之離散功能片段所需的方法、屬性、事件和關聯性。
- 這些方法可以讓使用者介面自動化用戶端操作此控制項。
- 屬性和事件提供控制項功能和狀態的相關資訊。
- 消費者介面自動化 專案及其父系、子系和同層級之間的關聯性描述消費者介面自動化樹狀結構中的專案結構。
控制項模式與介面與元件物件模型 (COM) 物件的方式類似。 在 COM 中,您可以查詢物件來詢問其支援的介面,然後使用這些介面來存取功能。 在消費者介面自動化中,用戶端可以詢問控制項所支援的控制項模式,然後透過支援控制項模式所公開的屬性、方法、事件和結構來與控制項互動。
提供者和用戶端中的控制項模式
消費者介面自動化提供者會實作控制項模式介面,以公開控制項所支援之特定功能的適當行為。 這些介面不會直接公開給用戶端,但由消費者介面自動化核心用來實作另一組用戶端介面。 例如,提供者會公開卷動功能以透過IScrollProvider消費者介面自動化,而消費者介面自動化透過IUIAutomationScrollPattern將功能公開給用戶端。
動態控制項模式
有些控制項不一定支援一組相同的控制項模式。 例如,多行編輯控制項只有在包含超過可檢視區域中可顯示之文字行時,才會啟用垂直捲動。 移除足夠的文字,因而不再需要捲動之後,捲動便會停用。 在此範例中,會根據編輯方塊中的文字數目,動態支援 IUIAutomationScrollPattern 。
控制項模式和相關介面
下表描述 UI 自動化控制項模式。 此資料表也會列出用來實作控制項模式的提供者介面,以及用來存取它們的用戶端介面。
相關主題