テーブル コントロールの種類

このトピックでは、Microsoft UI オートメーション Table コントロール型のサポートについて説明します。

テーブル コントロールには、テキストの行と列、および必要に応じて行ヘッダーと列ヘッダーが含まれます。

次のセクションでは、Table コントロール型に必要なUI オートメーションツリー構造、プロパティ、コントロール パターン、およびイベントを定義します。 UI オートメーション要件は、UI フレームワーク/プラットフォームがコントロール型とコントロール パターンのサポートUI オートメーション統合するすべてのテーブル コントロールに適用されます。

このトピックは、次のセクションで構成されています。

一般的なツリー構造

次の表は、テーブル コントロールに関連するUI オートメーション ツリーの一般的なコントロールとコンテンツ ビューを示し、各ビューに含めることができる内容について説明します。 UI オートメーション ツリーの詳細については、「UI オートメーション ツリーの概要」を参照してください。

コントロール ビュー コンテンツ ビュー
  • テーブル
    • Text (0 または 1)
    • ヘッダー (0 以上)
    • 各種コントロール (0 以上)
  • テーブル
    • テキスト (1 つ以上)
    • 各種コントロール (0 以上)

 

テーブル コントロールに行ヘッダーまたは列ヘッダーがある場合は、UI オートメーション ツリーのコントロール ビューでテーブル コントロールを公開する必要があります。 コンテンツ ビューは IUIAutomationTablePattern を使用してアクセスできるため、この情報を公開する必要はありません。

関連するプロパティ

次の表は、値または定義がテーブル コントロールに特に関連するUI オートメーションプロパティの一覧です。 UI オートメーションプロパティの詳細については、「UI オートメーション要素からのプロパティの取得」を参照してください。

UI Automation のプロパティ Notes
UIA_AutomationIdPropertyId 「ノート」を参照してください。 このプロパティの値は、UI オートメーション ツリーの生ビュー内のすべてのピア要素間で一意である必要があります。
UIA_BoundingRectanglePropertyId 「ノート」を参照してください。 コントロール全体を格納する最も外側の四角形。
UIA_ClickablePointPropertyId 「ノート」を参照してください。 四角形領域が存在する場合にサポートされます。 外接する四角形内のすべてのポイントがクリック可能でなく、要素が特殊なヒット テストを実行する場合は、オーバーライドしてクリック可能なポイントを指定します。
UIA_ControlTypePropertyId Table
UIA_DescribedByPropertyId 「ノート」を参照してください。 他の UI 要素 (テーブルの説明を保持するテキスト要素など) によってテーブルに注釈が指定されている場合、DescribedBy プロパティは、そのテキスト コントロールのオートメーション要素への参照を公開する必要があります。
UIA_HelpTextPropertyId 「ノート」を参照してください。 テーブルの目的の詳細については、 UIA_NamePropertyId プロパティで十分に説明されていない場合は、このプロパティを使用して公開する必要があります。
UIA_IsContentElementPropertyId true テーブル コントロールは、常にUI オートメーション ツリーのコンテンツ ビューに表示される必要があります。
UIA_IsControlElementPropertyId true テーブル コントロールは、常にUI オートメーション ツリーのコントロール ビューに表示される必要があります。
UIA_IsKeyboardFocusablePropertyId 「ノート」を参照してください。 コントロールがキーボード フォーカスを受け取ることができる場合は、このプロパティをサポートする必要があります。
UIA_LabeledByPropertyId 「ノート」を参照してください。 静的テキスト ラベルが存在する場合、このプロパティは、そのコントロールのオートメーション要素への参照を公開する必要があります。
UIA_LocalizedControlTypePropertyId 「ノート」を参照してください。 Table コントロール型に対応するローカライズされた文字列。 既定値は、en-US または英語 (米国) の "table" です。
UIA_NamePropertyId 「ノート」を参照してください。 通常、テーブル コントロールは、静的テキスト ラベルから名前の値を取得します。 静的テキスト ラベルがない場合、要素は、テーブルの目的を説明するために常に使用できる Name プロパティを割り当てる必要があります。

 

必須のコントロール パターン

次の表に、すべてのテーブル コントロールでサポートするために必要なUI オートメーションコントロール パターンを示します。 コントロール パターンの詳細については、「 UI Automation Control Patterns Overview」を参照してください。

コントロール パターン サポート Notes
IGridProvider 必須 テーブル コントロールにはグリッドに表示される項目が含まれているため、 グリッド コントロール パターン は常にサポートされます。
IGridItemProvider 子オブジェクトで必須 テーブルの内部オブジェクトは、 GridItem コントロール パターンと TableItem コントロール パターンの両方をサポートする必要があります。 テーブル自体は、テーブルが別のテーブルの一部でない限り、GridItem コントロール パターンまたは TableItem コントロール パターンをサポートする必要はありません。
ITableProvider 必須 テーブル コントロールは、常にコンテンツに関連付けられたヘッダーを持つことができます。
ITableItemProvider 子オブジェクトで必須 テーブルの内部オブジェクトは、 GridItem コントロール パターンと TableItem コントロール パターンの両方をサポートする必要があります。 テーブル自体では、それが別のテーブルの一部である場合を除いて、GridItem コントロール パターンも TableItem コントロール パターンもサポートする必要がありません。

 

必須イベント

次の表に、テーブル コントロールがサポートするために必要なUI オートメーション イベントを示します。 イベントの詳細については、「 UI Automation Events Overview」を参照してください。

UI オートメーション イベント Notes
UIA_AutomationFocusChangedEventId
プロパティUIA_BoundingRectanglePropertyId 変更されたイベントです。
プロパティUIA_IsEnabledPropertyId 変更されたイベントです。 コントロールが IsEnabled プロパティをサポートしている場合は、このイベントをサポートする必要があります。
プロパティUIA_IsOffscreenPropertyId 変更されたイベントです。 コントロールが IsOffscreen プロパティをサポートしている場合は、このイベントをサポートする必要があります。
UIA_StructureChangedEventId

 

概念

UI オートメーション コントロール型の概要

UI オートメーションの概要