ツリー コントロールの種類
このトピックでは、ツリー コントロールの種類に対する Microsoft UI オートメーションのサポートについて説明します。
ツリー コントロールの種類は、Windows エクスプローラーの左側のウィンドウにファイルとフォルダーを表示する方法と同様に、コンテンツがノードの階層として関連性を持つコンテナーに使用されます。 各ノードには、子ノードと呼ばれる他のノードが含まれる可能性があります。 親ノードまたは子ノードを含むノードは、展開または折りたたみとして表示できます。 Windows ツリー ビュー コントロール (WC_TREEVIEWで識別される) は、Tree コントロール型に属するコントロールの例です。
次のセクションでは、ツリー コントロール型に必要な UI オートメーション ツリーの構造、プロパティ、コントロール パターン、およびイベントを定義します。 UI オートメーションの要件は、UI フレームワーク/プラットフォームがコントロールの種類とコントロール パターンに対する UI オートメーションのサポートを統合するすべてのツリー項目コントロールに適用されます。
このトピックには、次のセクションが含まれています。
- 一般的なツリー構造の
- 関連するプロパティ を する
- 必要なコントロール パターンの
- 必要なイベント を する
- 関連トピック
一般的なツリー構造
次の表は、ツリー コントロールに関連する UI オートメーション ツリーの一般的なコントロールとコンテンツ ビューを示し、各ビューに含めることができる内容を示しています。 UI オートメーション ツリーの詳細については、「UI オートメーション ツリーの概要」を参照してください。
コントロール ビュー | コンテンツ ビュー |
---|---|
|
|
UI オートメーション ツリーのコントロール ビューは、次の要素で構成されます。
UI オートメーション ツリーのコンテンツ ビューは、コンテナー内の 0 個または多数の項目で構成されます (項目は、TreeItem または DataItem コントロール型 基づく場合があります)。
関連するプロパティ
次の表に、ツリー コントロール型に特に関連する値または定義を持つ UI オートメーション プロパティを示します。 UI オートメーション プロパティの詳細については、「UI オートメーション要素からプロパティを取得する」を参照してください。
UI オートメーション プロパティ | 価値 | 筆記 |
---|---|---|
UIA_AutomationIdPropertyId | ノートを参照してください。 | このプロパティの値は、UI オートメーション ツリーの生ビュー内のすべてのピア要素で一意である必要があります。 |
UIA_BoundingRectanglePropertyId | ノートを参照してください。 | コントロール全体を含む最も外側の四角形。 |
UIA_ClickablePointPropertyId | ノートを参照してください。 | ツリー コントロールには、ツリーまたはツリー コンテナー内のいずれかの項目がフォーカスを受け取るクリック可能なポイントがあります。 ツリー コントロールは、項目を選択したりフォーカスを受け取ったりすることなく、ツリー内の場所をクリックできる場合にのみ、クリック可能なポイントを持つことができます。 |
UIA_ControlTypePropertyId | ツリー | この値は、すべての UI フレームワークで同じです。 |
UIA_IsContentElementPropertyId | 真 | ツリー コントロールは、常に UI オートメーション ツリーのコンテンツ ビューに含まれます。 |
UIA_IsControlElementPropertyId | 真 | ツリー コントロールは、常に UI オートメーション ツリーのコントロール ビューに含まれます。 |
UIA_IsKeyboardFocusablePropertyId | ノートを参照してください。 | コントロールがキーボード フォーカスを受け取ることができる場合は、このプロパティをサポートする必要があります。 |
UIA_LabeledByPropertyId | ノートを参照してください。 | ツリー コントロールにラベルが関連付けられている場合、このプロパティは、そのラベルの IUIAutomationElement ポインターを返します。 それ以外の場合、プロパティは null 参照を返します。 |
UIA_LocalizedControlTypePropertyId | ノートを参照してください。 | Tree コントロール型に対応するローカライズされた文字列。 既定値は、en-US または英語 (米国) の場合は "tree" です。 |
UIA_NamePropertyId | ノートを参照してください。 | ツリー コントロールの name プロパティの値は、通常、コントロールにラベルを付けます。 テキスト ラベルがない場合は、このプロパティの値を指定する必要があります。 |
必要なコントロール パターン
次の表に、すべてのツリー コントロールでサポートされる必要がある UI オートメーション コントロール パターンを示します。 コントロール パターンの詳細については、「UI オートメーション コントロール パターンの概要」を参照してください。
Control Pattern/Pattern プロパティ | サポート/値 | 筆記 |
---|---|---|
IScrollProviderの | 依存 | ツリー コンテナー内の項目をスクロールできる場合は、Scroll コントロール パターンを実装します。 |
ISelectionProviderの | 依存 | 選択可能な項目のセットを含むツリー コントロールは、選択 コントロール パターンを実装する必要があります。 項目を選択しても意味のある情報がユーザーに伝達されない場合は、実装する必要はありません。 |
CanSelectMultiple | ノートを参照してください。 | ツリー コントロールが複数の選択をサポートしている場合は、このプロパティを実装します (ほとんどのツリー コントロールは複数の選択をサポートしていません)。 |
IsSelectionRequiredの | ノートを参照してください。 | コントロールで項目を選択する必要がある場合は、このプロパティの値が公開されます。 |
必要なイベント
次の表に、すべてのツリー コントロールでサポートする必要がある UI オートメーション イベントを示します。 イベントの詳細については、「UI オートメーション イベントの概要」を参照してください。
UI オートメーション イベント | 筆記 |
---|---|
UIA_AutomationFocusChangedEventId | |
プロパティ変更イベント UIA_BoundingRectanglePropertyId します。 | |
プロパティ変更イベントを UIA_IsEnabledPropertyId します。 | コントロールが IsEnabled プロパティをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティ変更イベント UIA_IsOffscreenPropertyId します。 | コントロールが IsOffscreen プロパティをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティ変更イベント UIA_ScrollHorizontallyScrollablePropertyId します。 | コントロールが Scroll コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティ変更イベント UIA_ScrollHorizontalScrollPercentPropertyId します。 | コントロールが Scroll コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティ変更イベント UIA_ScrollHorizontalViewSizePropertyId します。 | コントロールが Scroll コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティ変更イベント UIA_ScrollVerticalScrollPercentPropertyId します。 | コントロールが Scroll コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティ変更イベント UIA_ScrollVerticallyScrollablePropertyId します。 | コントロールが Scroll コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
プロパティ変更イベント UIA_ScrollVerticalViewSizePropertyId します。 | コントロールが Scroll コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
UIA_Selection_InvalidatedEventId | コントロールが Selection コントロール パターンをサポートしている場合は、このイベントをサポートする必要があります。 |
UIA_StructureChangedEventId |
関連トピック