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
Interaksi
Dukungan untuk Pola
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.