Gambaran Umum Properti UI Automation

Penyedia Microsoft UI Automation mengekspos properti pada elemen Automation UI. Properti memungkinkan aplikasi klien untuk mengambil informasi tentang kontrol.

Automasi UI memaparkan dua jenis properti yang berbeda: properti elemen otomatisasi, dan properte pola kontrol. Properti elemen otomatisasi terdiri dari sekumpulan properti umum, seperti Name, AcceleratorKey, dan ClassName, yang diekspos oleh semua elemen Automation UI, terlepas dari jenis kontrolnya. Sebagian besar properti elemen otomatisasi adalah nilai statis.

Properti pola kontrol adalah properti yang diekspos oleh kontrol yang mendukung pola kontrol tertentu. Setiap pola kontrol memiliki sekumpulan properti pola kontrol yang sesuai yang harus diekspos oleh kontrol. Misalnya, kontrol yang mendukung pola kontrol Kisi mengekspos properti ColumnCount dan RowCount. Sebagian besar properti pola kontrol adalah nilai dinamis.

Topik ini berisi bagian berikut.

Pengidentifikasi Properti

Setiap properti diidentifikasi oleh nilai numerik PROPERTYID yang disebut pengidentifikasi properti (ID). Penyedia dan klien menggunakan ID numerik dalam panggilan metode seperti IRawElementProviderAdviseEvents::AdviseEventAdded dan IUIAutomationElement::GetCachedPropertyValue untuk mengidentifikasi permintaan properti. Untuk deskripsi terperinci tentang setiap pengidentifikasi properti Automation UI, termasuk jenis data dan nilai default setiap properti, lihat Pengidentifikasi Properti.

Nilai Properti

Semua properti bersifat baca-saja, meskipun beberapa dapat diubah dengan menggunakan metode yang bertindak pada kontrol, seperti IDockProvider::SetDockPosition (penyedia) atau IUIAutomationDockPattern::SetDockPosition (klien).

Untuk informasi tentang mengambil nilai properti, lihat Mengambil Properti dari Elemen Automasi UI.

Properti dan Peristiwa

Terkait erat dengan properti di Automasi UI adalah konsep peristiwa yang diubah 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. Klien dapat mendaftar untuk mendengarkan peristiwa yang diubah properti di properti apa pun.

Penyedia memunculkan peristiwa ketika ada perubahan di UI. Misalnya, jika kotak centang dipilih atau dikosongkan, peristiwa yang diubah properti dinaikkan oleh implementasi penyedia pola kontrol Alihkan . 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 menaikkan peristiwa yang diubah properti saat properti Pilihan berubah. Dalam hal ini, aplikasi harus mendengarkan peristiwa yang dimunculkan ketika pilihan berubah (UIA_SelectionItem_ElementSelectedEventId).

Klien mendengarkan peristiwa dengan berlangganannya, seperti yang dijelaskan di Berlangganan Peristiwa Automasi UI. Untuk peristiwa yang diubah properti khususnya, klien harus menerapkan IUIAutomationPropertyChangedEventHandler dan meneruskan antarmuka ke IUIAutomation::AddPropertyChangedEventHandler atau IUIAutomation::AddPropertyChangedEventHandlerNativeArray.

Referensi

GetCurrentPropertyValue

GetCurrentPropertyValueEx

GetCachedPropertyValue

GetCachedPropertyValueEx

Konseptual

Gambaran Umum Pola Kontrol Automasi Antarmuka Pengguna

Gambaran Umum Jenis Kontrol Automasi Antarmuka Pengguna

Ringkasan Aktivitas UI Automation