次の方法で共有


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

メモメモ

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

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

ボタンは、ダイアログ ボックスの [OK] ボタンや [キャンセル] ボタンなど、アクションを実行するためにユーザーが対話的に操作するオブジェクトです。 ボタン コントロールは、ユーザーが実行する必要がある単一のコマンドにマッピングされるため、公開が簡単なコントロールです。

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

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

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

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

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

コントロール ビュー

コンテンツ ビュー

Button

  • Image (0 以上)

  • Text (0 以上)

Button

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

次の表に、値または定義が特に Button コントロール型を実装するコントロール (ボタン コントロールなど) に関連する UI Automation プロパティの一覧を示します。 UI Automation プロパティの詳細については、「クライアントの UI オートメーション プロパティ」を参照してください。

UI Automation プロパティ

説明

AcceleratorKeyProperty

説明を参照。

Button コントロールは通常、そのコントロールが表すアクションをエンド ユーザーがキーボードからすばやく実行することができるアクセラレータ キーをサポートする必要があります。

AutomationIdProperty

説明を参照。

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

BoundingRectangleProperty

説明を参照。

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

ClickablePointProperty

説明を参照。

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

ControlTypeProperty

Button

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

HelpTextProperty

説明を参照。

ヘルプ テキストには、ボタンを有効にした場合の最終結果を示します。 通常は、ツールヒントで表示される情報と同様の内容になります。

IsContentElementProperty

True

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

IsControlElementProperty

True

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

IsKeyboardFocusableProperty

説明を参照。

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

LabeledByProperty

Null

Button コントロールには、そのコンテンツによって自動的にラベルが付けられます。

LocalizedControlTypeProperty

"ボタン"

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

NameProperty

説明を参照。

ボタン コントロールの名前は、ラベル付けに使用されるテキストになります。 イメージを使用してボタンにラベルを付ける場合は常に、ボタンの Name プロパティに代替のテキストを指定する必要があります。

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

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

コントロール パターン

サポート

説明

IInvokeProvider

説明を参照。

すべてのボタンで、呼び出しコントロール パターンまたはトグル コントロール パターンをサポートする必要があります。 呼び出しは、ボタンがユーザーからの要求に応じてコマンドを実行する場合にサポートされます。 このコマンドは、切り取り、コピー、貼り付け、削除などの単一の操作にマッピングされます。

IToggleProvider

説明を参照。

すべてのボタンで、呼び出しコントロール パターンまたはトグル コントロール パターンをサポートする必要があります。 トグルは、ボタンが最大 3 つの一連の状態に切り替わることができる場合にサポートされます。 通常これは、特定の機能のオン/オフ スイッチとして示されます。

IExpandCollapseProvider

説明を参照。

ボタンが分割ボタンの子としてホストされる場合、子ボタンは呼び出しパターンまたはトグル パターンではなく ExpandCollapse パターンをサポートできます。 ExpandCollapse パターンは、ボタン要素に関連付けられたメニューやその他のサブ構造を開く、または閉じる場合に使用できます。

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

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

UI Automation イベント

サポート

説明

AutomationFocusChangedEvent

必須

なし

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

必須

なし

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

必須

なし

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

必須

なし

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

必須

なし

StructureChangedEvent

必須

なし

InvokedEvent

依存

コントロールで呼び出しコントロール パターンをサポートする場合は、このイベントをサポートする必要があります。

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

依存

コントロールでトグル コントロール パターンをサポートする場合は、このイベントをサポートする必要があります。

参照

参照

Button

概念

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

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