次の方法で共有


ComboBox コントロールの種類

このトピックでは、ComboBox コントロール型に対する Microsoft UI オートメーションのサポートについて説明します。

コンボ ボックスは、コンボ ボックスのリスト ボックス部分に現在選択されている項目を表示する静的コントロールまたは編集コントロールと組み合わせたリスト ボックスです。 コントロールのリスト ボックス部分は常に表示されるか、ユーザーがコントロールの横にあるドロップダウン矢印 (プッシュ ボタン) を選択した場合にのみ表示されます。 選択フィールドが編集コントロールの場合、ユーザーはリストにない情報を入力できます。それ以外の場合、ユーザーはリスト内の項目のみを選択できます。

次のセクションでは、ComboBox コントロール型に必要な UI オートメーション ツリー構造、プロパティ、コントロール パターン、およびイベントを定義します。 UI オートメーションの要件は、UI フレームワーク/プラットフォームがコントロールの種類とコントロール パターンに対する UI オートメーションのサポートを統合するすべてのコンボ ボックス コントロールに適用されます。

このトピックには、次のセクションが含まれています。

一般的なツリー構造

次の表は、コンボ ボックス コントロールに関連する UI オートメーション ツリーの一般的なコントロールとコンテンツ ビューを示し、各ビューに含めることができる内容を示しています。 UI オートメーション ツリーの詳細については、「UI オートメーション ツリーの概要」を参照してください。

コントロール ビュー コンテンツ ビュー
  • ComboBox
    • 編集 (0 または 1)
    • リスト (0 または 1)
    • リスト アイテム (リストの子、0 ~ 多)
    • ボタン (1)
  • ComboBox
    • リスト アイテム (0 ~ 多)

 

コンボ ボックスのコントロール ビューの編集コントロールは、[実行] ダイアログ ボックスのコンボ ボックスの場合と同様に、コンボ ボックスを編集して任意の入力を行うことができる場合にのみ必要

関連するプロパティ

次の表に、ComboBox コントロール型に特に関連する値または定義を持つ UI オートメーション プロパティを示します。 UI オートメーション プロパティの詳細については、「UI オートメーション要素からプロパティを取得する」を参照してください。

UI オートメーション プロパティ 価値 筆記
UIA_AutomationIdPropertyId ノートを参照してください。 このプロパティの値は、UI オートメーション ツリーの生ビュー内のすべてのピア要素で一意である必要があります。
UIA_BoundingRectanglePropertyId ノートを参照してください。 コントロール全体を含む最も外側の四角形。
UIA_ClickablePointPropertyId ノートを参照してください。 外接する四角形がある場合にサポートされます。 外接する四角形内のすべてのポイントがクリック可能でなく、要素が特殊なヒット テストを実行する場合は、オーバーライドしてクリック可能なポイントを指定します。
UIA_ControlTypePropertyId ComboBox
UIA_HelpTextPropertyId ノートを参照してください。 コンボ ボックス コントロールのヘルプ テキストでは、ユーザーがコンボ ボックスからオプションを選択するように求められる理由を説明する必要があります。 テキストは、ツールヒントで表示される情報に似ています。 たとえば、「モニターの表示解像度を設定する項目を選択します」などです。
UIA_IsContentElementPropertyId コンボ ボックス コントロールは、常に UI オートメーション ツリーのコンテンツ ビューに含まれます。
UIA_IsControlElementPropertyId コンボ ボックス コントロールは、常に UI オートメーション ツリーのコントロール ビューに含まれます。
UIA_IsKeyboardFocusablePropertyId コンボ ボックス コントロールはキーボード フォーカスを受け取ることができます。ただし、UI オートメーション クライアントがフォーカスをコンボ ボックスに設定すると、コンボ ボックス サブツリー内のすべての項目がフォーカスを受け取ることができます。
UIA_LabeledByPropertyId ノートを参照してください。 コンボ ボックス コントロールには、通常、このプロパティが参照する静的テキスト ラベルがあります。
UIA_LocalizedControlTypePropertyId ノートを参照してください。 ComboBox コントロール型に対応するローカライズされた文字列。 既定値は、en-US または英語 (米国) の "コンボ ボックス" です。
UIA_NamePropertyId ノートを参照してください。 コンボ ボックス コントロールの名前は、通常、静的テキスト ラベルから生成されます。 静的テキスト ラベルがない場合は、Name プロパティの値を割り当てる必要があります。 Name プロパティには、コンボ ボックスの現在の内容を含めたり、コンボ ボックスの内容が変更されたりすることはありません。

 

必要なコントロール パターン

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

コントロール パターン 支える 筆記
IExpandCollapseProviderする 必須 コンボ ボックス コントロールには常にドロップダウン ボタンが含まれている必要があるため、ExpandCollapse コントロール パターンをサポートする必要があります。
ISelectionProvider 依存 コンボ ボックスに現在選択されている項目を表示します。 選択 コントロール パターンのサポートは、コンボ ボックスの下のリスト ボックスに委任されますが、必ずしも可能であるとは限りません。
IValueProvider 依存 コンボ ボックスが任意のテキスト値を受け取ることができる場合は、 コントロール パターンがサポートされている必要があります。 このパターンにより、コンボ ボックスの文字列の内容をプログラムで設定できます。 値コントロール パターンがサポートされていない場合、ユーザーはコンボ ボックスのサブツリー内のリスト 項目から選択する必要があります。
IScrollProvider 一度もない スクロール コントロール パターンは、コンボ ボックスで直接サポートされることはありません。 コンボ ボックスに含まれるリスト ボックスがスクロールできる場合、およびリスト ボックスが画面に表示されている場合にのみサポートされます。

 

必要なイベント

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

UI オートメーション イベント 筆記
UIA_AutomationFocusChangedEventId
プロパティ変更イベント UIA_BoundingRectanglePropertyId します。
プロパティ変更イベントを UIA_IsEnabledPropertyId します。 コントロールが IsEnabled プロパティをサポートしている場合は、このイベントをサポートする必要があります。
プロパティ変更イベント UIA_IsOffscreenPropertyId します。 コントロールが IsOffscreen プロパティをサポートしている場合は、このイベントをサポートする必要があります。
UIA_StructureChangedEventId
プロパティ変更イベント UIA_ExpandCollapseExpandCollapseStatePropertyId します。
プロパティ変更イベント UIA_ValueValuePropertyId します。 コントロールが Value コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。

 

概念

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

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