共用方式為


實作 UI 自動化 Grid 控制項模式

注意事項注意事項

這份文件適用於想要使用 System.Windows.Automation 命名空間中定義之 Managed UI Automation 類別的 .NET Framework 開發人員。如需 UI Automation 的最新資訊,請參閱 Windows Automation API:使用者介面自動化 (英文)。

本主題將介紹實作 IGridProvider 的方針和慣例,包括屬性、方法和事件的相關資訊。 其他參考的連結列於概觀的結尾部分。

GridPattern 控制項模式是用來支援做為一組子項目容器的控制項。 此項目的子項必須實作 IGridItemProvider,而且必須組織成二維邏輯座標系統,可依列和欄周遊。 如需實作此控制項模式的控制項範例,請參閱 UI 自動化用戶端的控制項模式對應

這個主題包含下列章節。

  • 實作方針和慣例
  • IGridProvider 的必要成員
  • 例外狀況
  • 相關主題

實作方針和慣例

實作 Grid 控制項模式時,請注意下列方針和慣例:

  • 方格座標是從左上角 (或地區設定為右上儲存格) 以零為起始,座標為 (0, 0)。

  • 如果儲存格是空的,仍必須傳回 UI 自動化項目,才能支援該儲存格的 ContainingGrid 屬性。 當子項目在方格中的配置類似不完全陣列 (請參閱以下範例),就可能發生這種情形。

有空座標的方格控制項範例

顯示不完全配置的 Windows 檔案總管檢視

  • 單一項目的方格仍必須實作 IGridProvider,才能在邏輯上視為是方格。 方格中的子項目數為多少都沒關係。

  • 根據提供者實作而定,隱藏列和欄可能會載入到 UI Automation樹狀目錄,因此會反映在 RowCountColumnCount 屬性。 如果隱藏列和欄未載入,則應不會列入計數。

  • IGridProvider 不會啟用方格的使用中操作,而必須實作 ITransformProvider 才能啟用此功能。

  • 使用 StructureChangedEventHandler 接聽方格的結構或配置變更,例如新增、移除或合併儲存格。

  • 使用 AutomationFocusChangedEventHandler 追蹤方格項目或儲存格的周遊情形。

IGridProvider 的必要成員

實作 IGridProvider 介面時需要使用下列屬性和方法。

必要成員

類型

備註

RowCount

屬性

ColumnCount

屬性

GetItem

方法

這個控制項模式沒有相關事件。

例外狀況

提供者必須擲回下列例外狀況。

例外狀況類型

條件

ArgumentOutOfRangeException

GetItem

ArgumentOutOfRangeException

GetItem

  • 如果要求的列或欄座標小於零。

請參閱

工作

支援 UI 自動化提供者的控制項模式

使用 UI 自動化中的快取

概念

UI 自動化控制項模式概觀

用戶端的 UI 自動化控制項模式

實作 UI 自動化 GridItem 控制項模式

UI 自動化樹狀目錄概觀