ListItem-kontrolltyp
Det här avsnittet innehåller information om Microsoft UI Automation-stöd för kontrolltypen ListItem.
Listobjektkontroller är ett exempel på kontroller som implementerar ListItem kontrolltyp.
I följande avsnitt definieras den nödvändiga UI Automation-trädstrukturen, egenskaperna, kontrollmönstren och händelserna för ListItem kontrolltyp. Kraven för UI Automation gäller för alla listobjektkontroller där UI-ramverket/plattformen integrerar UI Automation-stöd för kontrolltyper och kontrollmönster.
Det här avsnittet innehåller följande avsnitt.
- typisk trädstruktur
- relevanta egenskaper
- nödvändiga kontrollmönster
- nödvändiga händelser
- kommentarer
- Relaterade ämnen
Typisk trädstruktur
I följande tabell visas en typisk kontroll- och innehållsvy över UI Automation-trädet som gäller för listobjektkontroller och beskriver vad som kan finnas i varje vy. Mer information om UI Automation-trädet finns i UI Automation Tree Overview.
Kontrollvy | Innehållsvy |
---|---|
|
|
Underordnade objekt i en listobjektkontroll i innehållsvyn i UI Automation-trädet måste alltid visa noll underordnade objekt. Om kontrollens struktur är sådan att andra objekt finns under listobjektet bör den följa kraven för UI Automation-stöd för TreeItem kontrolltyp.
Relevanta egenskaper
I följande tabell visas de UI Automation-egenskaper vars värde eller definition är särskilt relevant för ListItem kontrolltyp. Mer information om egenskaper för UI Automation finns i Hämta egenskaper från UI Automation-element.
UI Automation-egenskap | Värde | Anteckningar |
---|---|---|
UIA_AutomationIdPropertyId | Se anteckningar. | Värdet för den här egenskapen måste vara unikt bland alla peer-element i den råa vyn för UI Automation-trädet. Allokera egenskapen AutomationId för ett listobjekt om elementet är känt för att vara konsekvent mellan olika instanser av användargränssnittet. Om listobjektet är dynamiskt fyllt och inte förutsägbart lämnar du egenskapen AutomationId tom. |
UIA_BoundingRectanglePropertyId | Se anteckningar. | Det här värdet för den här egenskapen bör innehålla området för bild- och textinnehållet i listobjektet. |
UIA_ClickablePointPropertyId | Beror | Om listkontrollen har en klickbar punkt (en punkt som kan klickas för att få listan att fokusera) måste den punkten exponeras via den här egenskapen. Om listkontrollen är helt täckt av underordnade listobjekt returneras felet UIA_E_NOCLICKABLEPOINT för att indikera att klienten måste be ett objekt i listkontrollen om en klickbar punkt. |
UIA_ControlTypePropertyId | ListItem | Det här värdet är detsamma för alla gränssnittsramverk. |
UIA_HelpTextPropertyId | Se anteckningar. | Hjälptexten för listkontroller bör förklara varför användaren uppmanas att göra ett val från en lista med alternativ, vilket vanligtvis är samma typ av information som presenteras via en knappbeskrivning. Till exempel "Välj ett objekt för att ange bildskärmens bildskärmsupplösning". |
UIA_IsContentElementPropertyId | TRUE | Listkontrollen ingår alltid i innehållsvyn i UI Automation-trädet. |
UIA_IsControlElementPropertyId | TRUE | Listkontrollen ingår alltid i kontrollvyn för UI Automation-trädet. |
UIA_IsKeyboardFocusablePropertyId | Se anteckningar. | Om containern kan acceptera tangentbordsindata bör det här egenskapsvärdet vara TRUE. |
UIA_IsOffscreenPropertyId | Beror | Den här egenskapen måste returnera ett värde för om listobjektet för närvarande rullas i vyn i den överordnade containern som implementerar rullningslist kontrollmönster. |
UIA_ItemStatusPropertyId | Beror | Om kontrollen innehåller status som uppdateras dynamiskt måste den här egenskapen stödjas så att en hjälpmedelsteknik kan ta emot uppdateringar när statusen för elementet ändras. |
UIA_ItemTypePropertyId | Beror | Den här egenskapen bör exponeras för listobjektkontroller som representerar ett underliggande objekt. Dessa listobjektkontroller har vanligtvis en ikon som är associerad med den kontroll som användarna associerar med det underliggande objektet. |
UIA_LabeledByPropertyId | Se anteckningar. | Om det finns en statisk textetikett måste den här egenskapen exponera en referens till den kontrollen. |
UIA_LocalizedControlTypePropertyId | Se anteckningar. | Lokaliserad sträng som motsvarar ListItem kontrolltyp. Standardvärdet är "listobjekt" för en-US eller engelska (USA). |
UIA_NamePropertyId | Se anteckningar. | Värdet för en listobjektkontrolls namnegenskap kommer från objektets textetikett. |
Nödvändiga kontrollmönster
I följande tabell visas de UI Automation-kontrollmönster som krävs för att stödjas av alla listobjektkontroller. Mer information om kontrollmönster finns i UI Automation Control Patterns Overview.
Kontrollmönster | Stöd | Anteckningar |
---|---|---|
IExpandCollapseProvider | Beror | Om objektet kan ändras för att visa eller dölja information måste ExpandCollapse kontrollmönster implementeras. |
IGridItemProvider | Beror | Om rumslig navigering mellan objekt stöds i listcontainern och containern är ordnad i rader och kolumner, måste GridItem kontrollmönster implementeras. |
IInvokeProvider | Beror | Om objektet har ett kommando som kan utföras på det, separat från markeringen, måste Anropa kontrollmönster implementeras. Detta är vanligtvis en åtgärd som är associerad med att dubbelklicka på listobjektkontrollen. Exempel är att starta ett dokument från Utforskaren eller spela upp en musikfil i Microsoft Windows Media Player. |
IScrollItemProvider | Beror | Om listobjektet finns i en container som är rullningsbar måste ScrollItem kontrollmönstret implementeras. |
ISelectionItemProvider | Beror | En listobjektkontroll som stöder markering måste implementera kontrollmönstret SelectionItem. Detta gör att listobjektkontroller kan förmedlas när de väljs. |
IToggleProvider | Beror | Om listobjektet kan kontrolleras och åtgärden inte utför en ändring av markeringstillståndet måste Växla kontrollmönster implementeras. |
IValueProvider | Beror | Om objektet kan redigeras måste value-kontrollmönstret implementeras. Ändringar i listobjektkontrollen gör att värdena för egenskaperna UIA_NamePropertyId och UIA_ValueValuePropertyId ändras. |
Nödvändiga händelser
I följande tabell visas de UI Automation-händelser som listobjektkontroller krävs för att stödja. Mer information om händelser finns i UI Automation Events Overview.
UI Automation-händelse | Anteckningar |
---|---|
UIA_AutomationFocusChangedEventId | |
UIA_BoundingRectanglePropertyId händelse som ändrats av egenskapen. | |
UIA_ExpandCollapseExpandCollapseStatePropertyId händelse som ändrats av egenskapen. | Om kontrollen stöder ExpandCollapse kontrollmönster måste den stödja den här händelsen. |
UIA_Invoke_InvokedEventId | Om kontrollen stöder Anropa kontrollmönster måste den stödja den här händelsen. |
UIA_IsEnabledPropertyId händelse som ändrats av egenskapen. | Om kontrollen stöder egenskapen IsEnabled måste den stödja den här händelsen. |
UIA_IsOffscreenPropertyId händelse som ändrats av egenskapen. | Om kontrollen stöder egenskapen IsOffscreen måste den ha stöd för den här händelsen. |
UIA_ItemStatusPropertyId händelse som ändrats av egenskapen. | Om kontrollen stöder egenskapen ItemStatus måste den stödja den här händelsen. |
UIA_NamePropertyId händelse som ändrats av egenskapen. | |
UIA_SelectionItem_ElementAddedToSelectionEventId | Om kontrollen stöder SelectionItem kontrollmönster måste den stödja den här händelsen. |
UIA_SelectionItem_ElementRemovedFromSelectionEventId | Om kontrollen stöder SelectionItem kontrollmönster måste den stödja den här händelsen. |
UIA_SelectionItem_ElementSelectedEventId | Om kontrollen stöder SelectionItem kontrollmönster måste den stödja den här händelsen. |
UIA_StructureChangedEventId | |
UIA_ToggleToggleStatePropertyId händelse som ändrats av egenskapen. | Om kontrollen stöder Växla kontrollmönster måste den stödja den här händelsen. |
UIA_ValueValuePropertyId händelse som ändrats av egenskapen. | Om kontrollen stöder kontrollmönstret Value måste den ha stöd för den här händelsen. |
Anmärkningar
Om en container är värd för listobjekt bör det primära navigeringssättet gå till listobjekten. Att fokusera på underelement via listnavigering kan vara förvirrande för användare och hjälpmedelsverktyg. Om containern är värd för en lodrät lista över objekt bör du navigera genom objekten genom att trycka på uppåtpilen och NEDÅTPILen, men om du trycker på högerpilen och vänsterpilen kan du navigera till underelement i det fokuserade objektet, till exempel listkolumner eller underelement för användargränssnittet.
Relaterade ämnen
-
konceptuell
-
översikt över UI Automation-kontrolltyper
-
översikt över UI Automation