次の方法で共有


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

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

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

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

このトピックには、次のセクションが含まれています。

一般的なツリー構造

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

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

 

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

関連するプロパティ

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

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

 

必要なコントロール パターン

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

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

 

必要なイベント

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

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

 

概念

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

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