Share via


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

メモメモ

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

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

テキスト コントロールは、画面上のテキストを表す基本ユーザー インターフェイス項目です。

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

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

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

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

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

コントロール ビュー

コンテンツ ビュー

テキスト

Text (コンテンツがある場合はコンテンツ)

テキスト コントロールは、フォーム上のラベルまたは静的テキストとして単独で使用できます。 また、次の内容の構造体内にも格納できます。

  • ListItem

  • TreeItem

  • DataItem

テキストは、別のコントロールの NameProperty を通じて表示される場合も多いため、テキスト コントロールが UI Automation ツリーのコンテンツ ビュー内にあるとは限りません。 たとえば、コンボ ボックス コントロールにラベルを付けるために使用されるテキストは、コンボ ボックス コントロールの NameProperty を通じて公開されます。 コンボ ボックス コントロールが、UI オートメーション ツリーのコンテンツ ビュー内にあるため、テキスト コントロールはそのビュー内に存在する必要はありません。 テキスト コントロールでは、コンテンツ ビュー内の子の数は常に 0 です。

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

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

UI Automation プロパティ

説明

AutomationIdProperty

説明を参照。

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

BoundingRectangleProperty

説明を参照。

コントロール全体を包含する外側の四角形。

ClickablePointProperty

説明を参照。

外接する四角形が存在する場合はサポートされます。 外接する四角形の範囲内にクリック不可能な点が存在するときに特別なヒット テストを実行する場合は、クリック可能な点をオーバーライドして提供します。

IsKeyboardFocusableProperty

説明を参照。

コントロールがキーボード フォーカスを受け取ることができる場合は、このプロパティをサポートする必要があります。

NameProperty

説明を参照。

テキスト バー コントロールの名前は常にコントロールが表示するテキストになります。

LabeledByProperty

Null

テキスト コントロールには静的なテキスト ラベルはありません。

ControlTypeProperty

テキスト

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

LocalizedControlTypeProperty

"text"

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

IsContentElementProperty

依存

テキスト コントロールに別のコントロールの NameProperty で公開されていない情報が含まれる場合に、コンテンツを持ちます。

IsControlElementProperty

True

テキスト コントロールは、常にコントロールである必要があります。

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

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

コントロール パターン

サポート

説明

IValueProvider

なし

テキストは、ValuePattern をサポートしません。 テキストが編集可能な場合、これは Edit コントロール型になります。

ITextProvider

依存

アクセシビリティを向上させる場合は、テキストで Text コントロール パターンをサポートする必要がありますが、それ以外の場合は必須ではありません。 Text コントロール パターンは、テキストにさまざまなスタイルや属性 (色、太字、斜体など) を適用する場合に役立ちます。これはフレームワークによって異なります。

ITableItemProvider

依存

テーブル コントロールにテキスト要素が含まれている場合は、これをサポートする必要があります。

IRangeValueProvider

依存

テーブル コントロールにテキスト要素が含まれている場合は、これをサポートする必要があります。

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

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

UI Automation イベント

サポート

説明

TextSelectionChangedEvent

必須

なし

TextChangedEvent

必須

なし

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

必須

なし

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

必須

なし

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

必須

なし

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

必須

なし

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

なし

なし

AutomationFocusChangedEvent

必須

なし

StructureChangedEvent

必須

なし

参照

参照

Text

概念

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

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