テーブル コントロールの種類
このトピックでは、Microsoft UI オートメーション Table コントロール型のサポートについて説明します。
テーブル コントロールには、テキストの行と列、および必要に応じて行ヘッダーと列ヘッダーが含まれます。
次のセクションでは、Table コントロール型に必要なUI オートメーションツリー構造、プロパティ、コントロール パターン、およびイベントを定義します。 UI オートメーション要件は、UI フレームワーク/プラットフォームがコントロール型とコントロール パターンのサポートUI オートメーション統合するすべてのテーブル コントロールに適用されます。
このトピックは、次のセクションで構成されています。
一般的なツリー構造
次の表は、テーブル コントロールに関連するUI オートメーション ツリーの一般的なコントロールとコンテンツ ビューを示し、各ビューに含めることができる内容について説明します。 UI オートメーション ツリーの詳細については、「UI オートメーション ツリーの概要」を参照してください。
コントロール ビュー | コンテンツ ビュー |
---|---|
|
|
テーブル コントロールに行ヘッダーまたは列ヘッダーがある場合は、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 |
関連トピック