次の方法で共有


UI オートメーションによる ListItem コントロール型のサポート

メモメモ

このドキュメントは、System.Windows.Automation 名前空間で定義されているマネージ UI Automation クラスを使用する .NET Framework 開発者を対象としています。UI Automationに関する最新情報については、「Windows Automation API: UI Automation (Windows オートメーション API: UI オートメーション)」を参照してください。

ここでは、UI Automationによる ListItem コントロール型のサポートに関する情報を示します。 UI Automationでは、コントロール型は、ControlTypeProperty プロパティを使用するためにコントロールで満たす必要がある一連の条件となります。 これらの条件には、UI Automation ツリー構造、UI Automationのプロパティ値、およびコントロール パターンに関する特定のガイドラインが含まれます。

ListItem コントロール型を実装するコントロールとして、リスト項目コントロールなどがあります。

以下のセクションでは、ListItem コントロール型で必要な UI Automation ツリー構造、プロパティ、コントロール パターン、およびイベントを定義します。 UI Automationの各要件は、Windows Presentation Foundation (WPF)、Win32、Windows Forms のいずれの場合でも、すべてのリスト コントロールに当てはまります。

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

  • 必須の UI オートメーション ツリー構造
  • 必須の UI オートメーション プロパティ
  • 必須の UI オートメーション コントロール パターン
  • 必須の UI オートメーション イベント
  • 関連トピック

必須の UI オートメーション ツリー構造

次の表では、リスト項目コントロールに関連する UI Automation ツリーのコントロール ビューとコンテンツ ビューを示し、各ビューに格納できるものについて説明します。 UI Automation ツリーの詳細については、「UI オートメーション ツリーの概要」を参照してください。

コントロール ビュー

コンテンツ ビュー

ListItem

  • Image (0 以上)

  • Text (0 以上)

  • Edit (0 以上)

ListItem

UI Automationツリーのコンテンツ ビュー内のリスト項目コントロールの子は、常に "0" である必要があります。 リスト項目の下に他の項目が含まれるような構造を持つコントロールは、UI オートメーションによる TreeItem コントロール型のサポート コントロール型の要件に従う必要があります。

必須の UI オートメーション プロパティ

値または定義がリスト項目コントロールに特に関連する UI Automationのプロパティの一覧を次の表に示します。 UI Automation プロパティの詳細については、「クライアントの UI オートメーション プロパティ」を参照してください。

UI Automation プロパティ

説明

AutomationIdProperty

説明を参照。

このプロパティの値は、アプリケーションのすべてのコントロールで一意にする必要があります。

BoundingRectangleProperty

説明を参照。

このプロパティのこの値には、リスト項目のイメージおよびテキスト コンテンツの領域を含める必要があります。

ClickablePointProperty

依存

リスト コントロールにクリック可能なポイント (クリックするとリストがフォーカスを受け取るポイント) がある場合、そのポイントはこのプロパティを介して公開される必要があります。 リスト コントロールが子孫のリスト項目に完全に覆われている場合、そのコントロールは、クリック可能なポイントをリスト コントロールの内側にある項目に対して要求する必要があることをクライアントに示すために、NoClickablePointException を発生させます。

NameProperty

説明を参照。

リスト項目コントロールの名前プロパティの値は、その項目のテキスト コンテンツから取得されます。

LabeledByProperty

説明を参照。

静的テキスト ラベルが存在する場合、このプロパティは、該当するコントロールへの参照を公開する必要があります。

ControlTypeProperty

ListItem

この値は、すべての UI フレームワークで共通です。

LocalizedControlTypeProperty

"リスト項目"

ListItem コントロール型に対応するローカライズされた文字列。

IsContentElementProperty

True

リスト コントロールは、常に UI Automationツリーのコンテンツ ビューに含まれます。

IsControlElementProperty

True

リスト コントロールは、常に UI Automationツリーのコントロール ビューに含まれます。

IsKeyboardFocusableProperty

True

コンテナーがキーボード入力を受け取ることができる場合、このプロパティ値は true である必要があります。

HelpTextProperty

""

リスト コントロールのヘルプ テキストでは、オプションの一覧から選択することをユーザーに求めている理由を説明する必要があります。通常は、ツールヒントで表示される情報と同様の内容になります。 たとえば、"項目を選択すると、モニターの表示解像度が設定されます" という説明を表示します。

ItemTypeProperty

依存

このプロパティは、基になるオブジェクトを表しているリスト項目コントロールに対して公開される必要があります。 これらのリスト項目コントロールには、通常、ユーザーが基になるオブジェクトと関連付けたコントロールに関連付けられたアイコンがあります。

IsOffscreenProperty

依存

このプロパティは、そのリスト項目が現在、スクロール コントロール パターンを実装した親コンテナー内でスクロールして表示されているかどうかを示す値を返す必要があります。

必須の UI オートメーション コントロール パターン

リスト項目コントロールでサポートする必要がある UI Automationコントロール パターンの一覧を次の表に示します。 コントロール パターンの詳細については、「UI オートメーション コントロール パターンの概要」を参照してください。

コントロール パターン

サポート

説明

ISelectionItemProvider

リスト項目コントロールには、このコントロール パターンを実装する必要があります。 これにより、リスト項目コントロールは、選択されたことを伝達できます。

IScrollItemProvider

依存

このリスト項目がスクロール可能なコンテナーに格納されている場合には、このコントロール パターンを実装する必要があります。

IToggleProvider

依存

このリスト項目がチェック可能で、アクションによって選択状態の変更が実行されない場合には、このコントロール パターンを実装する必要があります。

IExpandCollapseProvider

依存

この項目を操作して情報を表示または非表示にできる場合は、このコントロール パターンを実装する必要があります。

IValueProvider

依存

この項目が編集可能である場合は、このコントロール パターンを実装する必要があります。 このリスト項目コントロールを変更すると、NameProperty および Value の値が変更されます。

IGridItemProvider

依存

リスト コンテナー内で項目間の空間的移動がサポートされており、コンテナーが行と列に配置されている場合は、グリッド項目コントロール パターンを実装する必要があります。

IInvokeProvider

依存

この項目に、この項目自体に対して実行できる選択以外のコマンドがある場合には、このパターンを実装する必要があります。 これは通常、リスト項目コントロールのダブルクリックに関連付けられたアクションです。 この例としては、Microsoft Windows Explorerからのドキュメントの起動や、Microsoft Windows Media Player での音楽ファイルの再生などがあります。

必須の UI オートメーション イベント

すべてのリスト項目コントロールでサポートする必要がある UI Automationイベントを次の表に示します。 イベントの詳細については、「UI オートメーション イベントの概要」を参照してください。

UI Automation イベント

サポート

説明

InvokedEvent

依存

なし

ElementAddedToSelectionEvent

必須

なし

ElementRemovedFromSelectionEvent

必須

なし

ElementSelectedEvent

必須

なし

BoundingRectangleProperty プロパティ変更イベント

必須

なし

IsOffscreenProperty プロパティ変更イベント

必須

なし

IsEnabledProperty プロパティ変更イベント

必須

なし

NameProperty

必須

なし

ItemStatusProperty プロパティ変更イベント

依存

なし

ExpandCollapseStateProperty プロパティ変更イベント

依存

なし

ValueProperty プロパティ変更イベント

依存

なし

ToggleStateProperty プロパティ変更イベント

依存

なし

AutomationFocusChangedEvent

必須

なし

StructureChangedEvent

必須

なし

参照

参照

ListItem

概念

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

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