Udostępnij za pośrednictwem


Interfejs IAccessibleEx

Kontrolki, które nie mają dostawcy automatyzacji interfejsu użytkownika firmy Microsoft, ale implementują IAccessible, można łatwo uaktualnić w celu zapewnienia niektórych funkcji automatyzacji interfejsu użytkownika przez zaimplementowanie interfejsu IAccessibleEx. Ten interfejs umożliwia kontrolce uwidacznianie właściwości automatyzacji interfejsu użytkownika i wzorców sterowania bez konieczności pełnej implementacji interfejsów dostawcy automatyzacji interfejsu użytkownika, takich jak IRawElementProviderFragment. Aby użyć IAccessibleEx, IRawElementProviderFragmenti wszystkich innych interfejsów automatyzacji interfejsu użytkownika, dołącz plik nagłówka UIAutomation.h w kodzie źródłowym.

Rozważmy na przykład niestandardową kontrolkę, która ma wartość zakresu. Serwer Microsoft Active Accessibility dla kontrolki definiuje rolę kontrolki i może zwrócić jego bieżącą wartość. Jednak ponieważ usługa Microsoft Active Accessibility nie definiuje minimalnych i maksymalnych właściwości, serwer nie ma możliwości zwrócenia minimalnych i maksymalnych wartości kontrolki. Klient automatyzacji UI może uzyskać rolę kontrolki, aktualną wartość i inne właściwości ułatwień dostępu Microsoft Active Accessibility, ponieważ rdzeń automatyzacji interfejsu użytkownika może je uzyskać za pośrednictwem IAccessible. Jednak bez dostępu do interfejsu IRangeValueProvider na obiekcie, Automatyzacja interfejsu użytkownika również nie może pobrać wartości maksymalnej i minimalnej.

Deweloper kontroli może dostarczyć kompletnego dostawcę automatyzacji interfejsu użytkownika dla kontrolki, ale oznaczałoby to duplikowanie dużej części istniejących funkcji implementacji IAccessible: na przykład nawigacji i typowych właściwości. Zamiast tego deweloper może nadal polegać na IAccessible w celu zapewnienia tej funkcji, dodając obsługę właściwości specyficznych dla kontrolek za pomocą IRangeValueProvider.

W tej sekcji

Wspólna Infrastruktura