Tipe Kontrol Daftar

Topik ini menyediakan informasi tentang dukungan Microsoft UI Automation untuk jenis kontrol Daftar .

Jenis kontrol Daftar menyediakan cara untuk mengatur grup datar atau grup item dan memungkinkan pengguna untuk memilih satu atau beberapa item tersebut. Jenis kontrol Daftar memiliki batasan longgar pada jenis elemen turunan apa yang mungkin dikandungnya. Ini memungkinkan penyedia UI Automation untuk mendukung elemen terkenal untuk kontainer pemilihan.

Bagian berikut menentukan struktur pohon, properti, pola kontrol, dan peristiwa Automation UI yang diperlukan untuk jenis kontrol Daftar . Persyaratan Otomatisasi UI berlaku untuk semua kontrol daftar di mana kerangka kerja/platform UI mengintegrasikan dukungan Automation UI untuk jenis kontrol dan pola kontrol.

Topik ini berisi bagian berikut.

Struktur Pohon Umum

Tabel berikut ini menggambarkan kontrol umum dan tampilan konten pohon Automation UI yang berkaitan dengan kontrol daftar, dan menjelaskan apa yang bisa dimuat dalam setiap tampilan. Untuk informasi selengkapnya tentang pohon UI Automation, lihat Ringkasan Pohon UI Automation.

Tampilan Kontrol Tampilan Konten
Berisi elemen yang sesuai dengan kontrol. Menghapus informasi redundan dari pohon sehingga teknologi bantuan bekerja dengan sekumpulan informasi terkecil yang bermakna bagi pengguna akhir.
  • Daftar
    • DataItem (0 atau lebih)
    • ListItem (0 atau lebih)
    • Grup (0 atau lebih)
    • Bilah Gulir (0, 1 atau 2)
  • Daftar
    • DataItem (0 atau lebih)
    • ListItem (0 atau lebih)
    • Grup (0 atau lebih)

Tampilan kontrol untuk kontrol yang menerapkan jenis kontrol Daftar (seperti kontrol daftar) terdiri dari:

  • Nol atau lebih item dalam kontrol daftar (item dapat didasarkan pada jenis kontrol ListItem atau DataItem )
  • Kontrol grup nol atau lebih dalam kontrol daftar
  • Kontrol nol, satu, atau dua bilah gulir

Tampilan konten kontrol yang menerapkan jenis kontrol Daftar (seperti kontrol daftar) terdiri dari:

  • Nol atau lebih item dalam kontrol daftar (item dapat didasarkan pada jenis kontrol ListItem atau DataItem )
  • Nol atau lebih grup dalam kontrol daftar

Kontrol daftar tidak boleh memiliki item yang memiliki hubungan hierarkis selain yang dikelompokkan bersama. Jika item memiliki turunan di pohon Automation UI, maka kontainer daftar harus didasarkan pada jenis kontrol Pohon .

Item yang dapat dipilih dalam kontrol daftar akan tersedia dari turunan di pohon UI Automation dari kontrol daftar. Semua item dalam kontrol daftar harus termasuk dalam grup pilihan yang sama. Item yang dapat dipilih dalam daftar harus diekspos sebagai jenis kontrol ListItem (bukan DataItem).

Properti yang Relevan

Tabel berikut ini mencantumkan properti Automation UI yang nilai atau definisinya sangat relevan dengan jenis kontrol Daftar . Untuk informasi selengkapnya tentang properti Otomatisasi UI, lihat Mengambil Properti dari Elemen Automasi UI.

Properti UI Automation Nilai Catatan
UIA_AutomationIdPropertyId Lihat catatan. Nilai properti ini harus unik di antara semua elemen serekan dalam tampilan mentah pohon Automation UI.
UIA_BoundingRectanglePropertyId Lihat catatan. Persegi panjang terluar yang berisi seluruh kontrol.
UIA_ClickablePointPropertyId Lihat catatan. Jika kontrol daftar memiliki titik yang dapat diklik (titik yang dapat diklik untuk menyebabkan daftar mengambil fokus), titik tersebut harus diekspos melalui properti ini. Jika nilai properti UIA_IsOffscreenPropertyIdTRUE, mencoba mengambil properti ini menghasilkan kesalahan UIA_E_NOCLICKABLEPOINT .
UIA_ControlTypePropertyId Daftar
UIA_HelpTextPropertyId Lihat catatan. Teks Bantuan untuk kontrol daftar harus menjelaskan mengapa pengguna diminta untuk membuat pilihan dari daftar opsi. Misalnya, "Memilih item dari daftar ini akan mengatur resolusi tampilan untuk monitor Anda."
UIA_IsContentElementPropertyId TRUE Kontrol daftar selalu disertakan dalam tampilan konten pohon UI Automation.
UIA_IsControlElementPropertyId TRUE Kontrol daftar selalu disertakan dalam tampilan kontrol pohon UI Automation.
UIA_IsKeyboardFocusablePropertyId Lihat catatan. Jika kontrol dapat menerima fokus keyboard, maka kontrol harus mendukung properti ini.
UIA_LabeledByPropertyId Lihat catatan. Jika ada label teks statis maka properti ini harus mengekspos referensi ke kontrol tersebut.
UIA_LocalizedControlTypePropertyId Lihat catatan. String yang dilokalkan sesuai dengan jenis kontrol Daftar . Nilai defaultnya adalah "list" untuk en-US atau English (Amerika Serikat).
UIA_NamePropertyId Lihat catatan. Nilai properti Nama kontrol daftar harus menyampaikan kategori opsi yang diminta untuk dipilih pengguna. Properti ini biasanya mendapatkan namanya dari label teks statis. Jika tidak ada label teks statis, pengembang aplikasi harus mengekspos nilai untuk properti Nama .
Satu-satunya waktu properti ini tidak diperlukan untuk kontrol daftar adalah jika kontrol digunakan dalam subpohon dari kontrol lain.

Pola dan Properti Kontrol yang Diperlukan

Tabel berikut mencantumkan pola kontrol Automation UI yang diperlukan untuk didukung oleh semua kontrol daftar. Untuk informasi selengkapnya tentang pola kontrol, lihat Gambaran Umum Pola Kontrol UI Automation.

Pola Kontrol/Properti Pola Dukungan/Nilai Catatan
IGridProvider Bergantung Terapkan pola kontrol Kisi saat navigasi kisi harus tersedia berdasarkan item berdasarkan item.
IMultipleViewProvider Bergantung Terapkan pola kontrol MultipleView jika kontrol dapat mendukung beberapa tampilan item dalam kontainer.
IScrollProvider Bergantung Terapkan pola kontrol Gulir jika item dalam kontainer dapat digulir.
ISelectionProvider Bergantung Jika kontrol mendukung tipe kontrol Daftar yang mendukung pilihan, kontrol harus menerapkan pola kontrol Pilihan saat status pilihan dipertahankan di antara item yang terkandung dalam kontrol. Jika item dalam kontrol tidak dapat dipilih, jenis kontrol Grup dapat digunakan.
CanSelectMultiple Bergantung Kontrol daftar dapat berupa kontainer pilihan tunggal atau ganda.
IsSelectionRequired Bergantung Kontrol daftar tidak selalu mengharuskan item dipilih.
ITableProvider Tidak pernah Pola kontrol Tabel tidak pernah didukung untuk jenis kontrol Daftar . Jika kontrol perlu mendukung pola kontrol ini, kontrol harus didasarkan pada jenis kontrol DataGrid .

Peristiwa yang Diperlukan

Tabel berikut mencantumkan peristiwa Automation UI yang diperlukan untuk mendukung kontrol daftar. Untuk informasi selengkapnya tentang peristiwa, lihat Gambaran Umum Peristiwa UI Automation.

Peristiwa UI Automation Catatan
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId peristiwa yang diubah properti.
UIA_IsEnabledPropertyId peristiwa yang diubah properti. Jika kontrol mendukung properti IsEnabled , kontrol harus mendukung kejadian ini.
UIA_IsOffscreenPropertyId peristiwa yang diubah properti. Jika kontrol mendukung properti IsOffscreen , kontrol harus mendukung kejadian ini.
UIA_LayoutInvalidatedEventId Jika tata letak item anak dapat diubah, kontrol harus mendukung kejadian ini.
UIA_MultipleViewCurrentViewPropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol MultipleView , kontrol harus mendukung peristiwa ini.
UIA_ScrollHorizontallyScrollablePropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol Gulir , kontrol harus mendukung peristiwa ini.
UIA_ScrollHorizontalScrollPercentPropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol Gulir , kontrol harus mendukung peristiwa ini.
UIA_ScrollHorizontalViewSizePropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol Gulir , kontrol harus mendukung peristiwa ini.
UIA_ScrollVerticalScrollPercentPropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol Gulir , kontrol harus mendukung peristiwa ini.
UIA_ScrollVerticallyScrollablePropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol Gulir , kontrol harus mendukung peristiwa ini.
UIA_ScrollVerticalViewSizePropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol Gulir , kontrol harus mendukung peristiwa ini.
UIA_Selection_InvalidatedEventId Jika kontrol mendukung pola kontrol Pemilihan , kontrol harus mendukung kejadian ini.
UIA_StructureChangedEventId

Konseptual

Gambaran Umum Jenis Kontrol UI Automation

Gambaran Umum UI Automation