Delen via


Overzicht van UI Automation-eigenschappen

Notitie

Deze documentatie is bedoeld voor .NET Framework-ontwikkelaars die de beheerde UI Automation-klassen willen gebruiken die zijn gedefinieerd in de System.Windows.Automation naamruimte. Zie Windows Automation-API: UI Automation voor de meest recente informatie over UI Automation.

UI Automation-providers maken eigenschappen beschikbaar in Microsoft UI Automation-elementen. Met deze eigenschappen kunnen UI Automation-clienttoepassingen informatie vinden over onderdelen van de gebruikersinterface (UI), met name besturingselementen, waaronder zowel statische als dynamische gegevens.

In deze sectie vindt u een breed overzicht van de eigenschappen van Microsoft UI Automation. Meer specifieke informatie vindt u in de volgende onderwerpen:

Eigenschaps-id's

Elke eigenschap wordt geïdentificeerd door een getal en een naam. De namen van eigenschappen worden alleen gebruikt voor foutopsporing en diagnose. Providers gebruiken de numerieke id's om binnenkomende eigenschapsaanvragen te identificeren. Clienttoepassingen gebruiken AutomationPropertyechter alleen , die het nummer en de naam inkapselen, om eigenschappen te identificeren die ze willen ophalen.

AutomationProperty objecten die bepaalde eigenschappen vertegenwoordigen, zijn beschikbaar als velden in verschillende klassen. Om veiligheidsredenen verkrijgen UI Automation-providers deze objecten uit een afzonderlijke set klassen die zijn opgenomen in Uiautomationtypes.dll.

De volgende tabel categoriseert eigenschappen op basis van de klassen die de AutomationPropertyid's bevatten.

Soorten eigenschappen Clients krijgen id's van Providers krijgen id's van
Eigenschappen die gangbaar zijn voor alle elementen (zie de volgende tabellen) AutomationElement AutomationElementIdentifiers
Positie van een dockingvenster DockPattern DockPatternIdentifiers
Status van een element dat kan worden uitgevouwen en samengevouwen ExpandCollapsePattern ExpandCollapsePatternIdentifiers
Eigenschappen van een item in een raster GridItemPattern GridItemPatternIdentifiers
Eigenschappen van een raster GridPattern GridPatternIdentifiers
Huidige en ondersteunde weergave van een element met meerdere weergaven MultipleViewPattern MultipleViewPatternIdentifiers
Eigenschappen van een element dat wordt verplaatst over een bereik met waarden, zoals een schuifregelaar RangeValuePattern RangeValuePatternIdentifiers
Eigenschappen van een schuifvenster ScrollPattern ScrollPatternIdentifiers
Status en container van een item dat kan worden geselecteerd, zoals in een lijst SelectionItemPattern SelectionItemPatternIdentifiers
Eigenschappen van een besturingselement dat selectie-items bevat SelectionPattern SelectionPatternIdentifiers
Kolom- en rijkoppen van een item in een tabel TableItemPattern TableItemPatternIdentifiers
Kolom- en rijkoppen en afdrukstand van een tabel TablePattern TablePatternIdentifiers
Status van een wisselknop TogglePattern TogglePatternIdentifiers
Mogelijkheden van een element dat kan worden verplaatst, gedraaid of het formaat ervan kan worden gewijzigd TransformPattern TransformPatternIdentifiers
Waarde- en lees-/schrijfmogelijkheden van een element met een waarde ValuePattern ValuePatternIdentifiers
Mogelijkheden en status van een venster WindowPattern WindowPatternIdentifiers

Eigenschappen per categorie

De volgende tabellen categoriseren de eigenschappen waarvan de id's zich bevinden en AutomationElementAutomationElementIdentifiers. Deze eigenschappen zijn gebruikelijk voor alle besturingselementen. Een paar zijn waarschijnlijk statisch gedurende de levensduur van de providertoepassing; de meeste dynamische eigenschappen zijn gekoppeld aan besturingspatronen.

De kolom Eigenschapstoegang bevat eventuele andere accessors voor elke eigenschap, naast GetCurrentPropertyValue en GetCachedPropertyValue. Zie Ui Automation-eigenschappen voor clients voor meer informatie over het ophalen van eigenschappen in een clienttoepassing.

Notitie

Volg de koppeling in de kolom Eigenschapstoegang voor specifieke informatie over elke eigenschap.

Weergavekenmerken

Eigenschaps-id Toegang tot eigenschappen
BoundingRectangleProperty BoundingRectangle
CultureProperty N.v.t.
HelpTextProperty HelpText
IsOffscreenProperty IsOffscreen
OrientationProperty Orientation

Elementtype

Eigenschaps-id Toegang tot eigenschappen
ControlTypeProperty ControlType
IsContentElementProperty IsContentElement
IsControlElementProperty IsControlElement
ItemTypeProperty ItemType
LocalizedControlTypeProperty LocalizedControlType

Kenmerk

Eigenschaps-id Toegang tot eigenschappen
AutomationIdProperty AutomationId
ClassNameProperty ClassName
FrameworkIdProperty FrameworkId
LabeledByProperty LabeledBy
NameProperty Name
ProcessIdProperty ProcessId
RuntimeIdProperty GetRuntimeId
NativeWindowHandleProperty NativeWindowHandle

Interactie

Eigenschaps-id Toegang tot eigenschappen
AcceleratorKeyProperty AcceleratorKey
AccessKeyProperty AccessKey
ClickablePointProperty GetClickablePoint
HasKeyboardFocusProperty HasKeyboardFocus
IsEnabledProperty IsEnabled
IsKeyboardFocusableProperty IsKeyboardFocusable

Ondersteuning voor patronen

Eigenschaps-id Toegang tot eigenschappen
IsDockPatternAvailableProperty GetSupportedPatterns
IsExpandCollapsePatternAvailableProperty GetSupportedPatterns
IsGridItemPatternAvailableProperty GetSupportedPatterns
IsGridPatternAvailableProperty GetSupportedPatterns
IsInvokePatternAvailableProperty GetSupportedPatterns
IsMultipleViewPatternAvailableProperty GetSupportedPatterns
IsRangeValuePatternAvailableProperty GetSupportedPatterns
IsScrollItemPatternAvailableProperty GetSupportedPatterns
IsScrollPatternAvailableProperty GetSupportedPatterns
IsSelectionItemPatternAvailableProperty GetSupportedPatterns
IsSelectionPatternAvailableProperty GetSupportedPatterns
IsTableItemPatternAvailableProperty GetSupportedPatterns
IsTablePatternAvailableProperty GetSupportedPatterns
IsTextPatternAvailableProperty GetSupportedPatterns
IsTogglePatternAvailableProperty GetSupportedPatterns
IsTransformPatternAvailableProperty GetSupportedPatterns
IsValuePatternAvailableProperty GetSupportedPatterns
IsWindowPatternAvailableProperty GetSupportedPatterns

Diversen

Eigenschaps-id Toegang tot eigenschappen
IsRequiredForFormProperty IsRequiredForForm
IsPasswordProperty IsPassword
ItemStatusProperty ItemStatus

Lokalisatie

UI Automation-providers moeten de volgende eigenschappen in de taal van het besturingssysteem presenteren:

Eigenschappen en gebeurtenissen

Nauw verbonden met de eigenschappen in UI Automation is het concept van gebeurtenissen die door eigenschappen zijn gewijzigd. Voor dynamische eigenschappen heeft de clienttoepassing een manier nodig om te weten dat een eigenschapswaarde is gewijzigd, zodat deze de cache met gegevens kan bijwerken of op een andere manier kan reageren op de nieuwe informatie.

Providers genereren gebeurtenissen wanneer iets in de gebruikersinterface verandert. Als bijvoorbeeld een selectievakje is ingeschakeld of uitgeschakeld, wordt een gebeurtenis die door eigenschappen is gewijzigd, gegenereerd door de implementatie van het wisselpatroon van de provider. Providers kunnen selectief gebeurtenissen genereren, afhankelijk van of clients naar gebeurtenissen luisteren of naar specifieke gebeurtenissen luisteren.

Niet alle wijzigingen in eigenschappen veroorzaken gebeurtenissen; dat is volledig aan de implementatie van de UI Automation-provider voor het element. De standaardproxyproviders voor keuzelijsten veroorzaken bijvoorbeeld geen gebeurtenis wanneer de SelectionProperty wijzigingen worden gewijzigd. In dit geval moet de toepassing in plaats daarvan luisteren naar een ElementSelectedEvent.

Clients luisteren naar gebeurtenissen door zich aan hen te abonneren. Abonneren op gebeurtenissen betekent het maken van gedelegeerde methoden die de gebeurtenissen kunnen verwerken en de methoden vervolgens doorgeven aan UI Automation, samen met de specifieke gebeurtenissen die in deze methoden worden behandeld. Voor gebeurtenissen die met eigenschappen zijn gewijzigd, moeten clients met name implementeren AutomationPropertyChangedEventHandler.

Zie ook