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

Note

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

このトピックでは、SplitButton コントロール型に対する UI オートメーションのサポートに関する情報を提供します。 UI オートメーションでのコントロール型とは、コントロールで ControlTypeProperty プロパティを使用するために満たす必要がある条件のセットのことです。 この条件には、UI オートメーション ツリーの構造、UI オートメーションのプロパティ値、コントロール パターンに関する特定のガイドラインが含まれます。

分割ボタン コントロールは、コントロールの操作を実行する機能、コントロールを展開して実行可能なその他の操作を一覧表示する機能を有効にします。

以降のセクションでは、SplitButton コントロール型に必要な UI オートメーション ツリー構造、プロパティ、コントロール パターン、イベントを定義します。 この UI オートメーションの要件は、Windows Presentation Foundation (WPF)、Win32、または Windows フォームのいずれにおいても、すべての分割ボタン コントロールに適用されます。

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

次の表に、分割ボタン コントロールに関連する UI オートメーション ツリーのコントロール ビューとコンテンツ ビューを示し、それぞれのビューに含めることができる内容について説明します。 UI オートメーション ツリーの詳細については、「UI オートメーション ツリーの概要」を参照してください。

コントロール ビュー コンテンツ ビュー
SplitButton

  • イメージ (0 または 1)
  • Text (0 または 1)
  • Button (1 または 2)

    • Menu (0 または 1。ExpandCollapse パターンをサポートするボタンの子として表示されます)
    • MenuItem (1 個以上)
SplitButton

- MenuItem (1 以上)

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

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

UI Automation のプロパティ Notes
AutomationIdProperty 「ノート」を参照してください。 このプロパティの値は、アプリケーション内のすべてのコントロールで一意である必要があります。
BoundingRectangleProperty 「ノート」を参照してください。 コントロール全体を格納する最も外側の四角形。
ClickablePointProperty 「ノート」を参照してください。 四角形領域が存在する場合にサポートされます。 四角形領域内にクリック不可能な点が存在し、特別なヒット テストを実行する場合は、オーバーライドしてクリック可能な点を提供します。
IsKeyboardFocusableProperty 「ノート」を参照してください。 コントロールがキーボード フォーカスを受け取ることができる場合は、このプロパティをサポートする必要があります。
NameProperty "Back" 分割ボタン コントロールの名前は、ボタンに表示されます。
LabeledByProperty [Null] 分割ボタン コントロールに静的なテキスト ラベルはありません。
ControlTypeProperty SplitButton この値は、すべての UI フレームワークで同じです。
LocalizedControlTypeProperty "split button" SplitButton コントロール型に対応する、ローカライズされた文字列。
HelpTextProperty 「ノート」を参照してください。 ヘルプ テキストで、分割ボタンをアクティブ化した場合の結果を示すことができます。これは一般に、ツールヒントに表示する情報と同じような情報です。
IsContentElementProperty 分割ボタン コントロールには、エンド ユーザーに対する情報が含まれます。
IsControlElementProperty 分割ボタン コントロールは、エンド ユーザーに表示されます。

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

次の表に、分割ボタン コントロールでサポートされる必要がある UI オートメーション コントロールのパターンを示します。 コントロール パターンについて詳しくは、「 UI Automation Control Patterns Overview」をご覧ください。

コントロール パターン サポート Notes
IInvokeProvider 必須 分割ボタンには、必ず呼び出しに関連付けられている既定の操作があります。
IExpandCollapseProvider 必須 分割ボタンには、必ずオプションの一覧を展開できる機能があります。

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

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

UI オートメーション イベント サポート Notes
InvokedEvent 必須 なし
BoundingRectangleProperty プロパティ変更イベント。 必須 なし
IsOffscreenProperty プロパティ変更イベント。 必須 なし
IsEnabledProperty プロパティ変更イベント。 必須 なし
ExpandCollapseStateProperty プロパティ変更イベント。 必須 なし
AutomationFocusChangedEvent 必須 なし
StructureChangedEvent 必須 なし

SplitButton コントロールの例

次の図は、データ グリッド コントロールの SplitButton コントロール型を示しています。

Split button

以下に、データ グリッド コントロールと分割ボタン コントロールに関連する UI オートメーション ツリーのコントロール ビューとコンテンツ ビューを示します。 オートメーションの各要素のコントロール パターンが、かっこ内に示されています。

UI オートメーション ツリー - コントロール ビュー UI オートメーション ツリー - コンテンツ ビュー
  • SplitButton "Name" (Invoke, ExpandCollapse)
  • Button "More options" (Invoke)

    • メニュー
    • MenuItem
  • SplitButton "Name" (Invoke, ExpandCollapse)
  • Button "More options" (Invoke)

    • メニュー
    • MenuItem

関連項目