IAccessibleEx インターフェイス

Microsoft UI オートメーション プロバイダーを持たないが、IAccessible を実装するコントロールは、IAccessibleEx インターフェイスを実装することで、いくつかのUI オートメーション機能を提供するように簡単にアップグレードできます。 このインターフェイスを使用すると、IRawElementProviderFragment などのプロバイダー インターフェイスの完全な実装を必要とせずに、UI オートメーションプロパティとコントロール パターンUI オートメーション公開できます。 IAccessibleExIRawElementProviderFragment、およびその他のすべてのUI オートメーション インターフェイスを使用するには、UIAutomation.h ヘッダー ファイルをソース コードに含めます。

たとえば、範囲の値を持つカスタム コントロールを考えてみましょう。 コントロールの Microsoft Active Accessibility サーバーは、コントロールのロールを定義し、現在の値を返すことができるようになります。 ただし、Microsoft Active Accessibility では最小プロパティと最大プロパティが定義されていないため、サーバーにはコントロールの最小値と最大値を返す手段がありません。 UI オートメーション コアは IAccessible を介して取得できるため、UI オートメーション クライアントはコントロールのロール、現在の値、およびその他の Microsoft Active Accessibility プロパティを取得できます。 ただし、オブジェクトの IRangeValueProvider インターフェイスにアクセスしないと、UI オートメーションも最大値と最小値を取得できません。

コントロール開発者は、コントロールの完全なUI オートメーション プロバイダーを提供できますが、これは、ナビゲーションや共通プロパティなど、IAccessible 実装の既存の機能の多くを複製することを意味します。 代わりに、開発者は引き続き IAccessible に依存してこの機能を提供しながら、 IRangeValueProvider を通じてコントロール固有のプロパティのサポートを追加できます。

このセクションの内容

共通インフラストラクチャ