Udostępnij za pomocą


Omówienie właściwości automatyzacji interfejsu użytkownika

Uwaga / Notatka

Ta dokumentacja jest przeznaczona dla deweloperów programu .NET Framework, którzy chcą używać zarządzanych klas automatyzacji interfejsu użytkownika zdefiniowanych w przestrzeni nazw System.Windows.Automation. Aby uzyskać najnowsze informacje na temat automatyzacji interfejsu użytkownika, zobacz Windows Automation API: Automatyzacja interfejsu użytkownika.

Dostawcy automatyzacji interfejsu użytkownika uwidaczniają właściwości elementów automatyzacji interfejsu użytkownika firmy Microsoft. Te właściwości umożliwiają aplikacjom klienckim automatyzacji interfejsu użytkownika odnajdywanie informacji o elementach interfejsu użytkownika, zwłaszcza kontrolkach, w tym danych statycznych i dynamicznych.

Ta sekcja zawiera szerokie omówienie właściwości automatyzacji interfejsu użytkownika firmy Microsoft. Bardziej szczegółowe informacje podano w następujących tematach:

Identyfikatory właściwości

Każda właściwość jest identyfikowana przez liczbę i nazwę. Nazwy właściwości są używane tylko do debugowania i diagnostyki. Dostawcy używają identyfikatorów liczbowych do identyfikowania przychodzących żądań właściwości. Aplikacje klienckie używają jednak tylko metody AutomationProperty, która hermetyzuje liczbę i nazwę, aby zidentyfikować właściwości, które mają zostać pobrane.

AutomationProperty obiekty reprezentujące określone właściwości są dostępne jako pola w różnych klasach. Ze względów bezpieczeństwa dostawcy automatyzacji interfejsu użytkownika uzyskują te obiekty z oddzielnego zestawu klas zawartych w Uiautomationtypes.dll.

Poniższa tabela kategoryzuje właściwości według klas zawierających AutomationPropertyidentyfikatory.

Rodzaje właściwości Klienci uzyskują identyfikatory z Dostawcy uzyskują identyfikatory z
Właściwości wspólne dla wszystkich elementów (zobacz poniższe tabele) AutomationElement AutomationElementIdentifiers
Położenie okna dokowania DockPattern DockPatternIdentifiers
Stan elementu, który może rozwinąć i zwinąć ExpandCollapsePattern ExpandCollapsePatternIdentifiers
Właściwości elementu w siatce GridItemPattern GridItemPatternIdentifiers
Właściwości siatki GridPattern GridPatternIdentifiers
Bieżący i obsługiwany widok elementu, który ma wiele widoków MultipleViewPattern MultipleViewPatternIdentifiers
Właściwości elementu, który przesuwa się po zakresie wartości, takiego jak suwak RangeValuePattern RangeValuePatternIdentifiers
Właściwości okna przewijania ScrollPattern ScrollPatternIdentifiers
Stan i kontener elementu, który można wybrać, jak na liście SelectionItemPattern SelectionItemPatternIdentifiers
Właściwości kontrolki zawierającej elementy wyboru SelectionPattern SelectionPatternIdentifiers
Nagłówki kolumn i wierszy elementu w tabeli TableItemPattern TableItemPatternIdentifiers
Nagłówki kolumn i wierszy oraz orientacja tabeli TablePattern TablePatternIdentifiers
Stan kontrolki przełącznika TogglePattern TogglePatternIdentifiers
Możliwości elementu, który można przenosić, obracać lub zmieniać rozmiar TransformPattern TransformPatternIdentifiers
Możliwość odczytu i zapisu oraz wartość elementów, które mają wartość ValuePattern ValuePatternIdentifiers
Możliwości i stan okna WindowPattern WindowPatternIdentifiers

Właściwości według kategorii

Poniższe tabele kategoryzują właściwości, których identyfikatory znajdują się w elementach AutomationElement i AutomationElementIdentifiers. Te właściwości są wspólne dla wszystkich kontrolek. Wszystkie, ale kilka z nich może być statyczne w okresie istnienia aplikacji dostawcy; większość właściwości dynamicznych jest skojarzona ze wzorcami kontrolek.

Kolumna Dostęp do właściwości zawiera listę innych metod dostępu dla każdej właściwości, oprócz GetCurrentPropertyValue i GetCachedPropertyValue. Aby uzyskać więcej informacji na temat pobierania właściwości w aplikacji klienckiej, zobacz Właściwości automatyzacji interfejsu użytkownika dla klientów.

Uwaga / Notatka

Aby uzyskać szczegółowe informacje o każdej właściwości, postępuj zgodnie z linkiem w kolumnie Dostęp do właściwości .

Właściwości wyświetlania

Identyfikator właściwości Dostęp do właściwości
BoundingRectangleProperty BoundingRectangle
CultureProperty N/a
HelpTextProperty HelpText
IsOffscreenProperty IsOffscreen
OrientationProperty Orientation

Typ elementu

Identyfikator właściwości Dostęp do właściwości
ControlTypeProperty ControlType
IsContentElementProperty IsContentElement
IsControlElementProperty IsControlElement
ItemTypeProperty ItemType
LocalizedControlTypeProperty LocalizedControlType

Identyfikacja

Identyfikator właściwości Dostęp do właściwości
AutomationIdProperty AutomationId
ClassNameProperty ClassName
FrameworkIdProperty FrameworkId
LabeledByProperty LabeledBy
NameProperty Name
ProcessIdProperty ProcessId
RuntimeIdProperty GetRuntimeId
NativeWindowHandleProperty NativeWindowHandle

Interakcja

Identyfikator właściwości Dostęp do właściwości
AcceleratorKeyProperty AcceleratorKey
AccessKeyProperty AccessKey
ClickablePointProperty GetClickablePoint
HasKeyboardFocusProperty HasKeyboardFocus
IsEnabledProperty IsEnabled
IsKeyboardFocusableProperty IsKeyboardFocusable

Obsługa wzorców

Identyfikator właściwości Dostęp do właściwości
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

Różne

Identyfikator właściwości Dostęp do właściwości
IsRequiredForFormProperty IsRequiredForForm
IsPasswordProperty IsPassword
ItemStatusProperty ItemStatus

Lokalizacja

Dostawcy automatyzacji interfejsu użytkownika powinni przedstawić następujące właściwości w języku systemu operacyjnego:

Właściwości i zdarzenia

Ściśle powiązanym z właściwościami interfejsu użytkownika w automatyzacji jest koncepcja zdarzeń zmiany właściwości. W przypadku właściwości dynamicznych aplikacja kliencka musi wiedzieć, że wartość właściwości uległa zmianie, aby mogła zaktualizować pamięć podręczną informacji lub zareagować na nowe informacje w inny sposób.

Dostawcy zgłaszają zdarzenia, gdy coś się zmieni w interfejsie użytkownika. Na przykład, jeśli pole wyboru jest zaznaczone lub odznaczone, zdarzenie zmiany właściwości jest wywoływane przez implementację wzorca przełączania przez dostawcę. Dostawcy mogą selektywnie zgłaszać zdarzenia, w zależności od tego, czy klienci monitorują zdarzenia ogólne, czy określone zdarzenia.

Nie wszystkie zmiany właściwości powodują wywołanie zdarzeń; zależy to całkowicie od implementacji dostawcy automatyzacji interfejsu użytkownika dla danego elementu. Na przykład standardowi dostawcy serwerów proxy dla pól listy nie zgłaszają zdarzenia, gdy SelectionProperty ulegnie zmianie. W takim przypadku aplikacja musi nasłuchiwać elementu ElementSelectedEvent.

Klienci słuchają zdarzeń, subskrybując je. Subskrybowanie zdarzeń polega na tworzeniu metod delegatów, które obsługują zdarzenia, a następnie przekazywaniu tych metod automatyzacji interfejsu użytkownika wraz z określonymi zdarzeniami, które mają być obsługiwane przez te metody. W przypadku zdarzenia zmiany właściwości w szczególności klienci muszą zaimplementować AutomationPropertyChangedEventHandler.

Zobacz także