Typ kontrolki listy
Ten temat zawiera informacje o obsłudze automatyzacji interfejsu użytkownika firmy Microsoft dla typu kontrolek listy.
Typ kontrolki listy umożliwia organizowanie płaskiej grupy lub grup elementów i umożliwia użytkownikowi wybranie co najmniej jednego z tych elementów. Typ kontrolki listy ma luźne ograniczenie dotyczące typów elementów podrzędnych, które mogą zawierać. Dzięki temu dostawcy automatyzacji interfejsu użytkownika mogą obsługiwać dobrze znany element dla kontenerów wyboru.
W poniższych sekcjach zdefiniowano wymaganą strukturę drzewa automatyzacji interfejsu użytkownika, właściwości, wzorce kontrolek i zdarzenia dla typu kontrolki Lista. Wymagania automatyzacji interfejsu użytkownika mają zastosowanie do wszystkich kontrolek listy, w których platforma/platforma interfejsu użytkownika integruje obsługę automatyzacji interfejsu użytkownika dla typów kontrolek i wzorców kontrolek.
Ten temat zawiera następujące sekcje.
- typowa struktura drzewa
- odpowiednie właściwości
- wymagane wzorce kontrolek i właściwości
- wymagane zdarzenia
- Tematy pokrewne
Typowa struktura drzewa
W poniższej tabeli przedstawiono typowy widok kontrolki i zawartości drzewa automatyzacji interfejsu użytkownika odnoszącego się do kontrolek listy i opisano, co można zawierać w każdym widoku. Aby uzyskać więcej informacji na temat drzewa automatyzacji interfejsu użytkownika, zobacz Omówienie drzewa automatyzacji interfejsu użytkownika.
Widok kontrolki | Widok zawartości |
---|---|
Zawiera elementy, które odpowiadają kontrolkom. | Usuwa nadmiarowe informacje z drzewa, aby technologie pomocnicze współdziałały z najmniejszym zestawem informacji zrozumiałych dla użytkownika końcowego. |
|
|
Widok kontrolki kontrolki implementujący typ kontrolki Lista (na przykład kontrolka listy) składa się z następujących elementów:
- Zero lub więcej elementów w kontrolce listy (elementy mogą być oparte na ListItem lub DataItem typów kontrolek)
- Zero lub więcej kontrolek grupy w kontrolce listy
- Zero, jeden lub dwa kontrolki paska przewijania
Widok zawartości kontrolki implementujący typ kontrolki Lista (na przykład kontrolka listy) składa się z następujących elementów:
- Zero lub więcej elementów w kontrolce listy (elementy mogą być oparte na ListItem lub DataItem typów kontrolek)
- Zero lub więcej grup w kontrolce listy
Kontrolka listy nie może zawierać elementów, które mają relację hierarchiczną inną niż grupowanie. Jeśli elementy mają elementy podrzędne w drzewie automatyzacji interfejsu użytkownika, kontener listy powinien być oparty na typie kontrolki Tree.
Wybrane elementy w kontrolce listy będą dostępne z elementów podrzędnych w drzewie automatyzacji interfejsu użytkownika kontrolki listy. Wszystkie elementy w kontrolce listy muszą należeć do tej samej grupy wyboru. Wybrane elementy na liście powinny być widoczne jako ListItem (zamiast DataItem) typów kontrolek.
Odpowiednie właściwości
W poniższej tabeli wymieniono właściwości automatyzacji interfejsu użytkownika, których wartość lub definicja jest szczególnie istotna dla typu kontrolki listy. Aby uzyskać więcej informacji na temat właściwości automatyzacji interfejsu użytkownika, zobacz Pobieranie właściwości z elementów automatyzacji interfejsu użytkownika.
Właściwość automatyzacji interfejsu użytkownika | Wartość | Notatki |
---|---|---|
UIA_AutomationIdPropertyId | Zobacz uwagi. | Wartość tej właściwości musi być unikatowa wśród wszystkich elementów równorzędnych w nieprzetworzonym widoku drzewa automatyzacji interfejsu użytkownika. |
UIA_BoundingRectanglePropertyId | Zobacz uwagi. | Najbardziej oddalony prostokąt, który zawiera całą kontrolkę. |
UIA_ClickablePointPropertyId | Zobacz uwagi. | Jeśli kontrolka listy ma punkt możliwy do kliknięcia (punkt, który można kliknąć, aby spowodować skupienie listy), ten punkt musi być uwidoczniony za pośrednictwem tej właściwości. Jeśli wartość właściwości UIA_IsOffscreenPropertyId jest true, próba pobrania tej właściwości spowoduje błąd UIA_E_NOCLICKABLEPOINT. |
UIA_ControlTypePropertyId | listy | |
UIA_HelpTextPropertyId | Zobacz uwagi. | Tekst Pomocy dla kontrolek listy powinien wyjaśnić, dlaczego użytkownik jest proszony o dokonanie wyboru z listy opcji. Na przykład "Wybór elementu z tej listy spowoduje ustawienie rozdzielczości wyświetlania dla monitora". |
UIA_IsContentElementPropertyId | true | Kontrolka listy jest zawsze uwzględniana w widoku zawartości drzewa automatyzacji interfejsu użytkownika. |
UIA_IsControlElementPropertyId | true | Kontrolka listy jest zawsze uwzględniana w widoku kontrolki drzewa automatyzacji interfejsu użytkownika. |
UIA_IsKeyboardFocusablePropertyId | Zobacz uwagi. | Jeśli kontrolka może odbierać fokus klawiatury, musi obsługiwać tę właściwość. |
UIA_LabeledByPropertyId | Zobacz uwagi. | Jeśli istnieje statyczna etykieta tekstowa, ta właściwość musi uwidocznić odwołanie do tej kontrolki. |
UIA_LocalizedControlTypePropertyId | Zobacz uwagi. | Zlokalizowany ciąg odpowiadający typowi kontrolki lista . Wartość domyślna to "list" dla en-US lub angielski (Stany Zjednoczone). |
UIA_NamePropertyId | Zobacz uwagi. | Wartość właściwości Name kontrolki listy powinna przekazać kategorię opcji, z których użytkownik jest proszony o wybranie. Ta właściwość zazwyczaj pobiera swoją nazwę z etykiety tekstowej statycznej. Jeśli nie ma statycznej etykiety tekstowej, deweloper aplikacji musi uwidocznić wartość właściwości nazwa. Jedynym czasem, gdy ta właściwość nie jest wymagana dla kontrolek listy, jest to, czy kontrolka jest używana w poddrzewie innej kontrolki. |
Wymagane wzorce i właściwości kontrolek
W poniższej tabeli wymieniono wzorce kontrolek automatyzacji interfejsu użytkownika wymagane do obsługi wszystkich kontrolek listy. Aby uzyskać więcej informacji na temat wzorców kontrolek, zobacz Wzorce kontrolek automatyzacji interfejsu użytkownika — omówienie.
Wzorzec/wzorzec kontrolki, właściwość | Pomoc techniczna/wartość | Notatki |
---|---|---|
IGridProvider | Zależy | Zaimplementuj wzorzec kontrolki Grid, gdy nawigacja siatki musi być dostępna dla elementu według elementu. |
IMultipleViewProvider | Zależy | Zaimplementuj wzorzec kontrolki MultipleView, jeśli kontrolka może obsługiwać wiele widoków elementów w kontenerze. |
IScrollProvider | Zależy | Zaimplementuj wzorzec kontrolki przewijania , jeśli elementy w kontenerze można przewijać. |
ISelectionProvider | Zależy | Jeśli kontrolka obsługuje typ kontrolki Lista, która obsługuje zaznaczenie, kontrolka musi zaimplementować wzorzec kontrolki Zaznaczenie, gdy stan zaznaczenia jest utrzymywany między elementami zawartymi w kontrolce. Jeśli elementy w kontrolce nie można zaznaczyć, można użyć grupy typ kontrolki. |
CanSelectMultiple | Zależy | Kontrolki listy mogą być kontenerami pojedynczego lub wielokrotnego wyboru. |
IsSelectionRequired | Zależy | Kontrolki listy nie zawsze wymagają wybrania elementu. |
ITableProvider | Nigdy | Wzorzec kontrolki tabeli nigdy nie jest obsługiwany dla typu kontrolki listy. Jeśli kontrolka musi obsługiwać ten wzorzec kontrolki, kontrolka powinna być oparta na typie kontrolki DataGrid. |
Zdarzenia wymagane
W poniższej tabeli wymieniono zdarzenia automatyzacji interfejsu użytkownika, które zawierają listę kontrolek wymaganych do obsługi. Aby uzyskać więcej informacji na temat zdarzeń, zobacz Omówienie zdarzeń automatyzacji interfejsu użytkownika.
Zdarzenie automatyzacji interfejsu użytkownika | Notatki |
---|---|
UIA_AutomationFocusChangedEventId | |
UIA_BoundingRectanglePropertyId zdarzenie zmienione właściwości. | |
UIA_IsEnabledPropertyId zdarzenie zmienione właściwości. | Jeśli kontrolka obsługuje właściwość IsEnabled, musi obsługiwać to zdarzenie. |
UIA_IsOffscreenPropertyId zdarzenie zmienione właściwości. | Jeśli kontrolka obsługuje właściwość IsOffscreen, musi obsługiwać to zdarzenie. |
UIA_LayoutInvalidatedEventId | Jeśli można zmienić układ elementów podrzędnych, kontrolka musi obsługiwać to zdarzenie. |
UIA_MultipleViewCurrentViewPropertyId zdarzenie zmienione właściwości. | Jeśli kontrolka obsługuje wzorzec sterowania MultipleView, musi obsługiwać to zdarzenie. |
UIA_ScrollHorizontallyScrollablePropertyId zdarzenie zmienione właściwości. | Jeśli kontrolka obsługuje wzorzec kontrolki przewijania przewijania, musi obsługiwać to zdarzenie. |
UIA_ScrollHorizontalScrollPercentPropertyId zdarzenie zmienione właściwości. | Jeśli kontrolka obsługuje wzorzec kontrolki przewijania przewijania, musi obsługiwać to zdarzenie. |
UIA_ScrollHorizontalViewSizePropertyId zdarzenie zmienione właściwości. | Jeśli kontrolka obsługuje wzorzec kontrolki przewijania przewijania, musi obsługiwać to zdarzenie. |
UIA_ScrollVerticalScrollPercentPropertyId zdarzenie zmienione właściwości. | Jeśli kontrolka obsługuje wzorzec kontrolki przewijania przewijania, musi obsługiwać to zdarzenie. |
UIA_ScrollVerticallyScrollablePropertyId zdarzenie zmienione właściwości. | Jeśli kontrolka obsługuje wzorzec kontrolki przewijania przewijania, musi obsługiwać to zdarzenie. |
UIA_ScrollVerticalViewSizePropertyId zdarzenie zmienione właściwości. | Jeśli kontrolka obsługuje wzorzec kontrolki przewijania przewijania, musi obsługiwać to zdarzenie. |
UIA_Selection_InvalidatedEventId | Jeśli kontrolka obsługuje wzorzec kontrolki Selection, musi obsługiwać to zdarzenie. |
UIA_StructureChangedEventId |