Bagikan melalui


Gambaran Umum Properti UI Automation

Catatan

Dokumentasi ini ditujukan untuk pengembang .NET Framework yang ingin menggunakan kelas UI Automation terkelola yang ditentukan pada namespace System.Windows.Automation. Untuk informasi terbaru tentang UI Automation, lihat API Automasi Windows: Automasi Antarmuka Pengguna.

Penyedia UI Automation mengekspos properti pada elemen Microsoft UI Automation. Properti ini memungkinkan aplikasi klien UI Automation untuk menemukan informasi tentang bagian antarmuka pengguna (UI), terutama kontrol, termasuk data statis dan dinamis.

Bagian ini memberikan ikhtisar umum tentang properti Microsoft UI Automation. Informasi yang lebih spesifik diberikan dalam topik berikut:

Pengidentifikasi Properti

Setiap properti diidentifikasi dengan nomor dan nama. Nama-nama properti hanya digunakan untuk penelusuran kesalahan dan diagnosis. Penyedia menggunakan ID numerik untuk mengidentifikasi permintaan properti yang masuk. Namun, aplikasi klien hanya menggunakan AutomationProperty, yang merangkum nomor dan nama, untuk mengidentifikasi properti yang ingin mereka ambil.

Objek AutomationProperty yang mewakili properti tertentu tersedia sebagai bidang di berbagai kelas. Untuk alasan keamanan, penyedia UI Automation mendapatkan objek ini dari kumpulan kelas terpisah yang terdapat di Uiautomationtypes.dll.

Tabel berikut mengategorikan properti berdasarkan kelas yang berisi AutomationPropertyIDs.

Jenis properti Klien mendapatkan ID dari Penyedia mendapatkan ID dari
Properti umum untuk semua elemen (lihat tabel berikut) AutomationElement AutomationElementIdentifiers
Posisi jendela tambatan DockPattern DockPatternIdentifiers
Status elemen yang dapat diperluas dan diciutkan ExpandCollapsePattern ExpandCollapsePatternIdentifiers
Properti item dalam kisi GridItemPattern GridItemPatternIdentifiers
Properti kisi GridPattern GridPatternIdentifiers
Tampilan elemen saat ini dan yang didukung yang memiliki banyak tampilan MultipleViewPattern MultipleViewPatternIdentifiers
Properti elemen yang bergerak pada rentang nilai, seperti penggeser RangeValuePattern RangeValuePatternIdentifiers
Properti jendela gulir ScrollPattern ScrollPatternIdentifiers
Status dan kontainer item yang dapat dipilih, seperti dalam daftar SelectionItemPattern SelectionItemPatternIdentifiers
Properti kontrol yang berisi item pilihan SelectionPattern SelectionPatternIdentifiers
Header kolom dan baris item dalam tabel TableItemPattern TableItemPatternIdentifiers
Header kolom dan baris, serta orientasi, dari sebuah tabel TablePattern TablePatternIdentifiers
Status kontrol pengalih TogglePattern TogglePatternIdentifiers
Kemampuan elemen yang dapat dipindahkan, diputar, atau diubah ukurannya TransformPattern TransformPatternIdentifiers
Nilai dan kemampuan baca/tulis elemen yang memiliki nilai ValuePattern ValuePatternIdentifiers
Kemampuan dan status jendela WindowPattern WindowPatternIdentifiers

Properti berdasarkan Kategori

Tabel berikut mengategorikan properti yang ID-nya ditemukan di AutomationElement dan AutomationElementIdentifiers. Properti ini umum untuk semua kontrol. Semua kecuali beberapa properti ini cenderung statis selama masa pakai aplikasi penyedia; sebagian besar properti dinamis dikaitkan dengan pola kontrol.

Kolom Akses Properti mencantumkan pengakses lain untuk setiap properti, selain GetCurrentPropertyValue dan GetCachedPropertyValue. Untuk informasi selengkapnya tentang mendapatkan properti di aplikasi klien, lihat Properti UI Automation untuk Klien.

Catatan

Untuk informasi spesifik tentang setiap properti, ikuti tautan di kolom Akses Properti.

Karakteristik Tampilan

Pengidentifikasi properti Akses properti
BoundingRectangleProperty BoundingRectangle
CultureProperty n/a
HelpTextProperty HelpText
IsOffscreenProperty IsOffscreen
OrientationProperty Orientation

Jenis elemen

Pengidentifikasi properti Akses properti
ControlTypeProperty ControlType
IsContentElementProperty IsContentElement
IsControlElementProperty IsControlElement
ItemTypeProperty ItemType
LocalizedControlTypeProperty LocalizedControlType

Identifikasi

Pengidentifikasi properti Akses properti
AutomationIdProperty AutomationId
ClassNameProperty ClassName
FrameworkIdProperty FrameworkId
LabeledByProperty LabeledBy
NameProperty Name
ProcessIdProperty ProcessId
RuntimeIdProperty GetRuntimeId
NativeWindowHandleProperty NativeWindowHandle

Interaksi

Pengidentifikasi properti Akses properti
AcceleratorKeyProperty AcceleratorKey
AccessKeyProperty AccessKey
ClickablePointProperty GetClickablePoint
HasKeyboardFocusProperty HasKeyboardFocus
IsEnabledProperty IsEnabled
IsKeyboardFocusableProperty IsKeyboardFocusable

Dukungan untuk Pola

Pengidentifikasi properti Akses properti
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

Lain-lain

Pengidentifikasi properti Akses properti
IsRequiredForFormProperty IsRequiredForForm
IsPasswordProperty IsPassword
ItemStatusProperty ItemStatus

Pelokalan

Penyedia UI Automation harus menampilkan properti berikut dalam bahasa komputer sistem operasi:

Properti dan Peristiwa

Yang terikat erat dengan properti di UI Automation adalah konsep peristiwa perubahan properti. Untuk properti dinamis, aplikasi klien memerlukan cara untuk mengetahui bahwa nilai properti telah berubah, sehingga dapat memperbarui cache informasinya atau bereaksi terhadap informasi baru dengan cara lain.

Penyedia memunculkan peristiwa ketika ada perubahan di UI. Misalnya, jika kotak centang dipilih atau dikosongkan, peristiwa perubahan properti dimunculkan oleh implementasi penyedia atas pola Pengalih. Penyedia dapat menampilkan peristiwa secara selektif, tergantung pada apakah ada klien yang mendengarkan peristiwa, atau mendengarkan peristiwa tertentu.

Tidak semua perubahan properti menampilkan peristiwa; ini sepenuhnya tergantung pada implementasi penyedia UI Automation untuk elemen tersebut. Misalnya, penyedia proksi standar untuk kotak daftar tidak menampilkan peristiwa saat SelectionProperty berubah. Dalam kasus ini, aplikasi harus mendengarkan ElementSelectedEvent.

Klien mendengarkan peristiwa dengan berlangganan ke peristiwa tersebut. Berlangganan ke peristiwa berarti membuat metode delegasi yang dapat menangani peristiwa, kemudian meneruskan metode tersebut ke UI Automation bersama dengan peristiwa tertentu yang akan ditangani dalam metode tersebut. Khususnya untuk peristiwa perubahan properti, klien harus mengimplementasikan AutomationPropertyChangedEventHandler.

Lihat juga