注
このドキュメントは、System.Windows.Automation 名前空間で定義されているマネージド UI オートメーション クラスを使用する .NET Framework 開発者を対象としています。 UI オートメーションの最新情報については、「Windows Automation API: UI オートメーション 」を参照してください。
このトピックでは、テキスト コントロールの種類に対する UI オートメーションのサポートについて説明します。 UI オートメーションでは、コントロール型は、 ControlTypeProperty プロパティを使用するためにコントロールが満たす必要がある一連の条件です。 条件には、UI オートメーション ツリー構造、UI オートメーション プロパティ値、およびコントロール パターンに関する特定のガイドラインが含まれます。
テキスト コントロールは、画面上のテキストを表す基本的なユーザー インターフェイス項目です。
次のセクションでは、Text コントロール型に必要な UI オートメーション ツリー構造、プロパティ、コントロール パターン、およびイベントを定義します。 UI オートメーションの要件は、Windows Presentation Foundation (WPF)、Win32、Windows フォームのいずれであっても、すべてのテキスト コントロールに適用されます。
必要な UI オートメーション ツリー構造
次の表は、テキスト コントロールに関連する UI オートメーション ツリーのコントロール ビューとコンテンツ ビューを示し、各ビューに含めることができる内容を示しています。 UI オートメーション ツリーの詳細については、「 UI オートメーション ツリーの概要」を参照してください。
コントロール ビュー | コンテンツ ビュー |
---|---|
テキスト | テキスト (コンテンツの場合) |
テキスト コントロールは、フォーム上のラベルまたは静的テキストとして単独で使用できます。 また、次の構造内に含めることもできます。
項目一覧
TreeItem
DataItem
テキストは、他のコントロールの NameProperty
を介して表示されることが多いため、UI オートメーション ツリーのコンテンツ ビューにテキスト コントロールが表示されない場合があります。 たとえば、コンボ ボックス コントロールのラベル付けに使用されるテキストは、コントロールの NameProperty
値を介して公開されます。 コンボ ボックス コントロールは UI オートメーション ツリーのコンテンツ ビューにあるため、テキスト コントロールがそこに存在する必要はありません。 テキスト コントロールのコンテンツ ビューには常に 0 個の子があります
必要な UI オートメーション プロパティ
次の表に、値または定義がテキスト コントロールに特に関連する UI オートメーション プロパティの一覧を示します。 UI オートメーション プロパティの詳細については、「 クライアントの UI オートメーション プロパティ」を参照してください。
UI オートメーション プロパティ | 価値 | 注記 |
---|---|---|
AutomationIdProperty | ノートを参照してください。 | このプロパティの値は、アプリケーション内のすべてのコントロールで一意である必要があります。 |
BoundingRectangleProperty | ノートを参照してください。 | コントロール全体を含む最も外側の四角形。 |
ClickablePointProperty | ノートを参照してください。 | 外接する四角形がある場合にサポートされます。 外接する四角形内のポイントのすべてがクリック可能でない場合、かつ特殊なヒットテストを行うのであれば、オーバーライドしてクリック可能なポイントを指定してください。 |
IsKeyboardFocusableProperty | ノートを参照してください。 | コントロールがキーボード フォーカスを受け取ることができる場合は、このプロパティをサポートする必要があります。 |
NameProperty | ノートを参照してください。 | テキスト バー コントロールの名前は、常に表示される txt です。 |
LabeledByProperty | Null |
テキスト コントロールには静的なテキスト ラベルがありません。 |
ControlTypeProperty | テキスト | この値は、すべての UI フレームワークで同じです。 |
LocalizedControlTypeProperty | "text" | テキスト コントロールの種類に対応するローカライズされた文字列。 |
IsContentElementProperty | 依存 | テキスト コントロールに、別のコントロールの NameProperty で公開されていない情報が含まれている場合はコンテンツになります。 |
IsControlElementProperty | 正しい | テキスト コントロールは常にコントロールである必要があります。 |
必要な UI オートメーション コントロール パターン
次の表に、テキスト コントロールでサポートするために必要な UI オートメーション コントロール パターンの一覧を示します。 コントロール パターンの詳細については、「UI オートメーション コントロール パターンの概要」を参照してください。
コントロール パターン | 支援 | 注記 |
---|---|---|
IValueProvider | 決してない | テキストは ValuePattern をサポートしません。 テキストが編集可能な場合は、編集コントロールの種類です。 |
ITextProvider | 依存 | テキストは、アクセシビリティを向上するために Text コントロール パターンをサポートする必要があります。ただし、必須ではありません。 テキスト コントロール パターンは、テキストに豊富なスタイルと属性 (色、太字、斜体など) がある場合に便利です。フレームワークに依存します。 |
ITableItemProvider | 依存 | テキスト要素が Table コントロール内に含まれている場合は、これをサポートする必要があります。 |
IRangeValueProvider | 依存 | テキスト要素がテーブル コントロール内に含まれている場合は、これをサポートする必要があります。 |
必要な UI オートメーション イベント
次の表に、すべてのテキスト コントロールでサポートされる必要がある UI オートメーション イベントを示します。 イベントの詳細については、「 UI オートメーション イベントの概要」を参照してください。
UI オートメーション イベント | 支援 | 注記 |
---|---|---|
TextSelectionChangedEvent | 必須 | 無し |
TextChangedEvent | 必須 | 無し |
BoundingRectangleProperty プロパティ変更イベント。 | 必須 | 無し |
IsOffscreenProperty プロパティ変更イベント。 | 必須 | 無し |
IsEnabledProperty プロパティ変更イベント。 | 必須 | 無し |
NameProperty プロパティ変更イベント。 | 必須 | 無し |
ValueProperty プロパティ変更イベント。 | 決してない | 無し |
AutomationFocusChangedEvent | 必須 | 無し |
StructureChangedEvent | 必須 | 無し |