次の方法で共有


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

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

このトピックでは、タブ コントロールの種類に対する UI オートメーションのサポートについて説明します。 UI オートメーションでは、コントロール型は、 ControlTypeProperty プロパティを使用するためにコントロールが満たす必要がある一連の条件です。 条件には、UI オートメーション ツリー構造、UI オートメーション プロパティ値、UI オートメーションに関する特定のガイドラインが含まれます。 コントロール パターン。

タブ コントロールは、ノートブックの分割線やファイル キャビネット内のラベルに似ています。 タブ コントロールを使用すると、アプリケーションでウィンドウまたはダイアログ ボックスの同じ領域に複数のページを定義できます。

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

必要な UI オートメーション ツリー構造

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

コントロール ビュー コンテンツ ビュー
タブ

  • TabItem (1 つ以上)
  • ScrollBar (0 または 1)

    • ボタン (0 または 2)
タブ

- TabItem (1 つ以上)

タブ コントロールには、タブ項目コントロールの種類に基づく子 UI オートメーション要素があります。 タブ項目がグループ化されている場合 (たとえば、Microsoft Office 2007 アプリケーションの場合など)、Tab コントロールの種類は、次のツリー構造に示すように、グループ化されたタブ項目のグループ コントロールの種類をホストすることもできます。

コントロール ビュー コンテンツ ビュー
タブ

  • TabItem (1 つ以上)
  • グループ (0 以上)

    • TabItem (0 以上)
  • ScrollBar (0 以上)

    • ボタン (0 または 2)
タブ

  • TabItem (1 つ以上)
  • グループ (0 以上)

    • TabItem (0 以上)

必要な UI オートメーション プロパティ

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

UI オートメーション プロパティ 価値 注記
AutomationIdProperty ノートを参照してください。 このプロパティの値は、アプリケーション内のすべてのコントロールで一意である必要があります。
BoundingRectangleProperty ノートを参照してください。 コントロール全体を含む最も外側の四角形。
IsKeyboardFocusableProperty ノートを参照してください。 コントロールがキーボード フォーカスを受け取ることができる場合は、このプロパティをサポートする必要があります。
NameProperty ノートを参照してください。 タブ コントロールに Name プロパティが必要になることはほとんどありません。
ClickablePointProperty いいえ タブ コントロールにはクリック可能なポイントがありません。
LabeledByProperty ノートを参照してください。 タブ コントロールには、通常、このプロパティを通じて公開される静的テキスト ラベルがあります。
ControlTypeProperty タブ この値は、すべての UI フレームワークで同じです。
LocalizedControlTypeProperty "tab" Tab コントロール型に対応するローカライズされた文字列。
IsKeyboardFocusableProperty 正しい Tab コントロールの種類は、キーボード フォーカスを受け取ることができる必要があります。 通常、UI オートメーション クライアントはタブ コントロールで SetFocus を呼び出し、その項目の 1 つがキーボード フォーカスをタブ コントロールに転送します。 一部のタブ コンテナーでは、いずれかの項目にフォーカスを設定せずにフォーカスを設定できます。
IsContentElementProperty 正しい タブ コントロールは、常に UI オートメーション ツリーのコンテンツ ビューに含まれます。
IsControlElementProperty 正しい タブ コントロールは、常に UI オートメーション ツリーのコントロール ビューに含まれます。
OrientationProperty ノートを参照してください。 タブ コントロールは、常に水平方向または垂直方向のどちらに配置されるかを示す必要があります。

必要な UI オートメーション コントロールのパターンとプロパティ

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

Control Pattern/Pattern プロパティ サポート/値 注記
ISelectionProvider イエス すべてのタブ コントロールは、選択パターンをサポートする必要があります。
IsSelectionRequired 正しい タブ コントロールでは、常に選択を行う必要があります。
CanSelectMultiple いいえ タブ コントロールは常に単一選択コンテナーです。
IScrollProvider 依存 スクロール パターンはタブ コントロールでサポートされている必要があります。ウィジェットを使用すると、一連のタブ項目をスクロールできます。

必要な UI オートメーション イベント

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

UI オートメーション イベント 支援 注記
BoundingRectangleProperty プロパティ変更イベント。 必須 無し
IsOffscreenProperty プロパティ変更イベント。 必須 無し
IsEnabledProperty プロパティ変更イベント。 必須 無し
HorizontallyScrollableProperty プロパティ変更イベント。 依存 無し
HorizontalScrollPercentProperty プロパティ変更イベント。 依存 無し
HorizontallyScrollableProperty プロパティ変更イベント。 依存 無し
HorizontalViewSizeProperty プロパティ変更イベント。 依存 無し
VerticalScrollPercentProperty プロパティ変更イベント。 依存 無し
VerticalViewSizeProperty プロパティ変更イベント。 依存 無し
AutomationFocusChangedEvent 必須 無し
StructureChangedEvent 必須 無し

こちらも参照ください