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

Note

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

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

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

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

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

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

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

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

    • Button (0 または 2)
タブ

- TabItem (1 以上)

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

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

  • TabItem (1 以上)
  • Group (0 以上)

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

    • Button (0 または 2)
タブ

  • TabItem (1 以上)
  • Group (0 以上)

    • TabItem (0 以上)

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

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

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

必須の UI オートメーション コントロール パターンおよびプロパティ

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

コントロール パターン/パターン プロパティ サポート/値 メモ
ISelectionProvider はい すべてのタブ コントロールが、Selection パターンをサポートする必要があります。
IsSelectionRequired タブ コントロールで、常に選択が行われる必要があります。
CanSelectMultiple × タブ コントロールは、常に単一選択コンテナーです。
IScrollProvider 依存 Scroll パターンは、一連のタブ項目全体をスクロールできるようにするウィジェットを持つタブ コントロールでサポートされる必要があります。

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

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

UI オートメーション イベント サポート Notes
BoundingRectangleProperty プロパティ変更イベント。 必須 なし
IsOffscreenProperty プロパティ変更イベント。 必須 なし
IsEnabledProperty プロパティ変更イベント。 必須 なし
HorizontallyScrollableProperty プロパティ変更イベント。 依存 なし
HorizontalScrollPercentProperty プロパティ変更イベント。 依存 なし
HorizontallyScrollableProperty プロパティ変更イベント。 依存 なし
HorizontalViewSizeProperty プロパティ変更イベント。 依存 なし
VerticalScrollPercentProperty プロパティ変更イベント。 依存 なし
VerticalViewSizeProperty プロパティ変更イベント。 依存 なし
AutomationFocusChangedEvent 必須 なし
StructureChangedEvent 必須 なし

関連項目