Die IAccessibleEx-Schnittstelle

Steuerelemente, die keinen Microsoft Benutzeroberflächenautomatisierung-Anbieter haben, aber IAccessible implementieren, können problemlos aktualisiert werden, um einige Benutzeroberflächenautomatisierung Funktionen bereitzustellen, indem sie die IAccessibleEx-Schnittstelle implementieren. Mit dieser Schnittstelle kann das Steuerelement Benutzeroberflächenautomatisierung Eigenschaften und Steuerelementmuster verfügbar machen, ohne dass eine vollständige Implementierung Benutzeroberflächenautomatisierung Anbieterschnittstellen wie IRawElementProviderFragment erforderlich ist. Um IAccessibleEx, IRawElementProviderFragment und alle anderen Benutzeroberflächenautomatisierung-Schnittstellen zu verwenden, fügen Sie die Headerdatei UIAutomation.h in Ihren Quellcode ein.

Betrachten Sie beispielsweise ein benutzerdefiniertes Steuerelement, das über einen Bereichswert verfügt. Der Microsoft Active Accessibility-Server für das Steuerelement definiert die Rolle des Steuerelements und kann seinen aktuellen Wert zurückgeben. Da Microsoft Active Accessibility jedoch keine minimalen und maximalen Eigenschaften definiert, fehlen dem Server die Mittel, um die minimalen und maximalen Werte des Steuerelements zurückzugeben. Ein Benutzeroberflächenautomatisierung Client kann die Rolle, den aktuellen Wert und andere Microsoft Active Accessibility-Eigenschaften des Steuerelements abrufen, da der Benutzeroberflächenautomatisierung Core diese über IAccessible abrufen kann. Ohne Zugriff auf eine IRangeValueProvider-Schnittstelle für das Objekt kann Benutzeroberflächenautomatisierung jedoch auch nicht die maximalen und minimalen Werte abrufen.

Der Steuerelemententwickler könnte einen vollständigen Benutzeroberflächenautomatisierung Anbieter für das Steuerelement bereitstellen. Dies würde jedoch bedeuten, einen Großteil der vorhandenen Funktionen der IAccessible-Implementierung zu duplizieren: z. B. Navigation und allgemeine Eigenschaften. Stattdessen kann sich der Entwickler weiterhin auf IAccessible verlassen, um diese Funktionalität zur Verfügung zu stellen, während er unterstützung für steuerelementspezifische Eigenschaften über IRangeValueProvider hinzufügt.

In diesem Abschnitt

Allgemeine Infrastruktur