Bagikan melalui


Menerapkan Pola Kontrol Pilihan 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.

Topik ini memperkenalkan pedoman dan konvensi untuk penerapan ISelectionProvider, termasuk informasi tentang peristiwa dan properti. Link ke referensi tambahan tercantum di akhir topik.

Pola kontrol SelectionPattern digunakan untuk mendukung kontrol yang bertindak sebagai kontainer untuk kumpulan item turunan yang dapat dipilih. Turunan elemen ini harus menerapkan ISelectionItemProvider. Untuk contoh kontrol yang menerapkan pola kontrol ini, baca Pemetaan Pola Kontrol untuk Klien UI Automation.

Pedoman dan Konvensi Implementasi

Saat menerapkan pola kontrol Pemilihan, perhatikan panduan dan konvensi berikut:

  • Kontrol yang mengimplementasikan ISelectionProvider memperbolehkan item turunan tunggal atau beberapa dipilih. Misalnya, kotak daftar, tampilan daftar, dan tampilan pohon mendukung beberapa pilihan sedangkan kotak kombo, penggeser, dan grup tombol radio mendukung pilihan tunggal.

  • Kontrol yang memiliki rentang minimum, maksimum, dan berkelanjutan, seperti kontrol penggeser Volume, harus diimplementasikan IRangeValueProvider alih-alih ISelectionProvider.

  • Kontrol pilihan tunggal yang mengelola kontrol turunan yang mengimplementasikan IRawElementProviderFragmentRoot, seperti penggeser Resolusi Layar dalam kotak dialog Properti Tampilan atau kontrol pemilihan Pemilih Warna dari Microsoft Word (diilustrasikan di bawah), harus mengimplementasikan ISelectionProvider; elemen turunannya harus mengimplementasikan IRawElementProviderFragment dan ISelectionItemProvider.

Color picker with yellow highlighted. Contoh Pemetaan String Color Swatch

  • Menu tidak mendukung SelectionPattern. Jika Anda bekerja dengan item menu yang menyertakan grafik dan teks (seperti item Panel Pratinjau di menu Tampilan di Microsoft Outlook) dan perlu menyampaikan status, Anda harus menerapkan IToggleProvider.

Anggota yang Diperlukan untuk ISelectionProvider

Properti, metode, dan peristiwa berikut diperlukan untuk antarmuka ISelectionProvider.

Anggota yang diperlukan Jenis Catatan
CanSelectMultiple Properti Harus mendukung peristiwa yang diubah properti menggunakan AddAutomationPropertyChangedEventHandler dan RemoveAutomationPropertyChangedEventHandler.
IsSelectionRequired Properti Harus mendukung peristiwa yang diubah properti menggunakan AddAutomationPropertyChangedEventHandler dan RemoveAutomationPropertyChangedEventHandler.
GetSelection Metode Tidak
InvalidatedEvent Kejadian Dimunculkan ketika pilihan dalam kontainer telah berubah secara signifikan dan memerlukan pengiriman lebih banyak peristiwa penambahan dan penghapusan daripada izin konstanta InvalidateLimit.

Properti IsSelectionRequired dan CanSelectMultiple bisa dinamis. Misalnya, status awal kontrol mungkin tidak memiliki item apa pun yang dipilih secara default, menunjukkan bahwa IsSelectionRequired adalah false. Namun, setelah item dipilih, kontrol harus selalu memiliki setidaknya satu item yang dipilih. Demikian pula, dalam kasus yang jarang terjadi, kontrol mungkin memungkinkan beberapa item dipilih pada inisialisasi, tetapi kemudian hanya mengizinkan pilihan tunggal yang akan dibuat.

Pengecualian

Penyedia harus menampilkan pengecualian berikut.

Tipe Pengecualian Kondisi
ElementNotEnabledException Jika kontrol tidak diaktifkan.
InvalidOperationException Jika kontrol disembunyikan.

Lihat juga