UI オートメーションによる DataGrid コントロール型のサポート
メモ |
---|
このドキュメントは、System.Windows.Automation 名前空間で定義されているマネージ UI Automation クラスを使用する .NET Framework 開発者を対象としています。UI Automationに関する最新情報については、「Windows Automation API: UI Automation (Windows オートメーション API: UI オートメーション)」を参照してください。 |
ここでは、Microsoft UI Automationによる DataGrid コントロール型のサポートに関する情報を示します。 UI Automationでは、コントロール型とは、ControlType プロパティを使用するためにコントロールが満たす必要のある条件のセットです。 これらの条件には、UI Automation ツリー構造、UI Automationのプロパティ値、およびコントロール パターンに関する特定のガイドラインが含まれます。
DataGrid コントロール型を使用すると、列で表されるメタデータを含む項目を簡単に処理できます。 データ グリッド コントロールには、項目の行と、それらの項目に関する情報の列があります。 Microsoft Vista のエクスプローラーのリスト ビュー コントロールは、DataGrid コントロール型をサポートする 1 つの例です。
以下のセクションでは、DataGrid コントロール型に必要な UI Automation ツリー構造、プロパティ、コントロール パターン、およびイベントを定義します。 UI Automationの各要件は、Windows Presentation Foundation (WPF)、Win32、Windows Formsのいずれの場合でも、すべてのデータ グリッド コントロールに当てはまります。
このトピックは、次のセクションで構成されています。
- 必須の UI オートメーション ツリー構造
- 必須の UI オートメーション プロパティ
- 必須の UI オートメーション コントロール パターン
- 必須の UI オートメーション イベント
- データ グリッド コントロール型の例
- 関連トピック
必須の UI オートメーション ツリー構造
次の表では、データ グリッド コントロールに関連する UI Automation ツリーのコントロール ビューとコンテンツ ビューを示し、各ビューに格納できるものについて説明します。 UI Automation ツリーの詳細については、「UI オートメーション ツリーの概要」を参照してください。
UI Automation ツリー - コントロール ビュー |
UI Automation ツリー - コンテンツ ビュー |
---|---|
DataGrid
|
DataGrid
|
必須の UI オートメーション プロパティ
次の表に、値または定義が特にデータ グリッド コントロールに関連するプロパティを示します。 UI Automation プロパティの詳細については、「クライアントの UI オートメーション プロパティ」を参照してください。
プロパティ |
値 |
説明 |
---|---|---|
説明を参照。 |
このプロパティの値は、アプリケーションのすべてのコントロールで一意にする必要があります。 |
|
説明を参照。 |
コントロール全体を包含する外側の四角形。 |
|
説明を参照。 |
外接する四角形が存在する場合はサポートされます。 外接する四角形の範囲内にクリック不可能な点が存在するときに特別なヒット テストを実行する場合は、クリック可能な点をオーバーライドして提供します。 |
|
DataGrid |
この値は、すべての UI フレームワークで共通です。 |
|
True |
このプロパティの値は常に True でなければなりません。 つまり、データ グリッド コントロールは常に UI Automation ツリーのコンテンツ ビュー内に存在する必要があります。 |
|
True |
このプロパティの値は常に True でなければなりません。 つまり、データ グリッド コントロールは常に UI Automation ツリーのコントロール ビュー内に存在する必要があります。 |
|
説明を参照。 |
コントロールがキーボード フォーカスを受け取ることができる場合は、このプロパティをサポートする必要があります。 |
|
説明を参照。 |
静的テキスト ラベルが存在する場合、このプロパティは、該当するコントロールへの参照を公開する必要があります。 |
|
"データ グリッド" |
DataGrid コントロール型に対応するローカライズされた文字列。 |
|
説明を参照。 |
通常、データ グリッド コントロールは、静的テキスト ラベルからその Name プロパティの値を取得します。 静的テキスト ラベルが存在しない場合、アプリケーションの開発者は Name プロパティの値を割り当てる必要があります。 Name プロパティの値は、エディット コントロールのテキスト コンテンツにすることはできません。 |
必須の UI オートメーション コントロール パターン
すべてのデータ グリッド コントロールでサポートする必要があるコントロール パターンの一覧を次の表に示します。 コントロール パターンの詳細については、「UI オートメーション コントロール パターンの概要」を参照してください。
コントロール パターン |
サポート |
説明 |
---|---|---|
○ |
データ グリッド コントロールが格納する項目は、グリッドに配置されるメタデータを含んでいるため、データ グリッド コントロール自身は常に Grid コントロール パターンをサポートします。 |
|
依存 |
データ グリッドをスクロールする機能は、コンテンツがどのようなものか、およびスクロール バーが存在するかどうかに依存します。 |
|
依存 |
データ グリッドを選択する機能は、コンテンツがどのようなものかに依存します。 |
|
○ |
データ グリッド コントロールのサブツリー内には常にヘッダーがあるため、Table コントロール パターンがサポートされる必要があります。 |
データ グリッド コンテナー内のデータ項目は、少なくとも次をサポートします。
選択項目コントロール パターン (データ グリッドを選択できる場合)
スクロール項目コントロール パターン (データ グリッドをスクロールできる場合)
グリッド項目コントロール パターン
テーブル項目コントロール パターン
必須の UI オートメーション イベント
次の表は、すべてのデータ グリッド コントロールでサポートする必要のある UI Automation イベントの一覧です。 イベントの詳細については、「UI オートメーション イベントの概要」を参照してください。
UI Automation イベント |
サポート |
説明 |
---|---|---|
必須 |
なし |
|
BoundingRectangleProperty プロパティ変更イベント |
必須 |
なし |
IsEnabledProperty プロパティ変更イベント |
必須 |
なし |
IsOffscreenProperty プロパティ変更イベント |
必須 |
なし |
依存 |
なし |
|
必須 |
なし |
|
CurrentViewProperty プロパティ変更イベント |
依存 |
なし |
HorizontallyScrollableProperty プロパティ変更イベント |
依存 |
コントロールで Scroll パターンをサポートする場合は、このイベントをサポートする必要があります。 |
HorizontalScrollPercentProperty プロパティ変更イベント。 |
依存 |
コントロールで Scroll パターンをサポートする場合は、このイベントをサポートする必要があります。 |
HorizontalViewSizeProperty プロパティ変更イベント。 |
依存 |
コントロールで Scroll パターンをサポートする場合は、このイベントをサポートする必要があります。 |
VerticalScrollPercentProperty プロパティ変更イベント。 |
依存 |
コントロールで Scroll パターンをサポートする場合は、このイベントをサポートする必要があります。 |
VerticallyScrollableProperty プロパティ変更イベント。 |
依存 |
コントロールで Scroll パターンをサポートする場合は、このイベントをサポートする必要があります。 |
VerticalViewSizeProperty プロパティ変更イベント。 |
依存 |
コントロールで Scroll パターンをサポートする場合は、このイベントをサポートする必要があります。 |
必須 |
なし |
データ グリッド コントロール型の例
次の図は、DataGrid コントロール型を実装するリスト ビュー コントロールを示しています。
以下に、リスト ビュー コントロールに関連する UI Automation ツリーのコントロール ビューとコンテンツ ビューを示します。 各オートメーション要素のコントロール パターンをかっこで囲んで示します。
UI Automation ツリー - コントロール ビュー |
UI Automation ツリー - コンテンツ ビュー |
---|---|
|
|
*上の例は、複数レベルのコントロールを含む DataGrid を示しています。 Group ("Contoso") コントロールには、2 つの DataItem コントロール ("Accounts Receivable.doc" と "Accounts Payable.doc") が含まれています。 DataGrid と GridItem のペアは、別のレベルのペアに依存しません。 Group の下の DataItem コントロールは ListItem コントロール型としても公開でき、単純なデータ要素としてではなく選択できるオブジェクトとしてより明確に表示できます。 この例には、グループ化されたデータ項目のサブ要素は含まれていません。