Jenis Kontrol DataItem
Topik ini menyediakan informasi tentang dukungan Microsoft UI Automation untuk jenis kontrol DataItem.
Entri dalam daftar Kontak adalah contoh kontrol item data. Kontrol item data berisi informasi yang menarik bagi pengguna akhir. Ini lebih rumit daripada item daftar sederhana karena berisi informasi yang lebih kaya.
Bagian berikut menentukan struktur pohon, properti, pola kontrol, dan peristiwa Automation UI yang diperlukan untuk jenis kontrol DataItem. Persyaratan Automasi UI berlaku untuk semua kontrol item data tempat kerangka kerja/platform UI mengintegrasikan dukungan Automation UI untuk jenis kontrol dan pola kontrol.
Topik ini berisi bagian berikut.
- Struktur Pohon Umum
- properti yang relevan
- Pola Kontrol yang Diperlukan
- Bekerja dengan DataItem dalam Daftar Besar
- Peristiwa yang Diperlukan
- Contoh Jenis Kontrol DataItem
- Topik terkait
Tabel berikut ini menggambarkan kontrol umum dan tampilan konten pohon Automation UI yang berkaitan dengan kontrol item data dan menjelaskan apa yang dapat dimuat dalam setiap tampilan. Untuk informasi selengkapnya tentang pohon Automation UI, lihat Gambaran Umum Pohon Automasi UI .
Tampilan Kontrol | Tampilan Isi |
---|---|
|
|
Elemen item data dalam kisi data dapat menghosting berbagai objek, termasuk lapisan item data lain, atau elemen kisi tertentu seperti teks, gambar, atau kontrol edit. Jika elemen item data memiliki peran objek tertentu, elemen harus diekspos sebagai jenis kontrol tertentu; misalnya, jenis kontrol ListItem untuk item data yang dapat dipilih di kisi.
Tabel berikut mencantumkan properti Automation UI yang nilai atau definisinya sangat relevan dengan jenis kontrol DataItem. Untuk informasi selengkapnya tentang properti Automation UI, lihat Mengambil Properti dari Elemen Automation UI.
Properti Automasi UI | 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. | Didukung jika ada persegi panjang pembatas. Jika tidak setiap titik dalam persegi panjang pembatas dapat diklik, dan elemen melakukan pengujian hit khusus, ambil alih dan berikan titik yang dapat diklik. |
UIA_ControlTypePropertyId | DataItem | |
UIA_IsContentElementPropertyId | BENAR | Kontrol item data harus selalu berupa konten. |
UIA_IsControlElementPropertyId | BENAR | Kontrol item data harus selalu menjadi kontrol. |
UIA_IsKeyboardFocusablePropertyId | Lihat catatan. | Jika kontrol dapat menerima fokus keyboard, kontrol harus mendukung properti ini. |
UIA_ItemStatusPropertyId | Lihat catatan. | Jika kontrol berisi status yang sedang diperbarui secara dinamis, properti ini harus didukung sehingga teknologi bantuan dapat menerima pembaruan saat status elemen berubah. |
UIA_ItemTypePropertyId | Lihat catatan. | Ini adalah nilai string yang disampaikan kepada pengguna akhir objek dasar yang diwakili item. Contohnya termasuk "File Media" dan "Kontak". |
UIA_LabeledByPropertyId | Nol | Kontrol item data tidak memiliki label teks statis. |
UIA_LocalizedControlTypePropertyId | Lihat catatan. | String yang dilokalkan sesuai dengan jenis kontrol DataItem. Nilai defaultnya adalah "item data" untuk en-US atau Inggris (Amerika Serikat). |
UIA_NamePropertyId | Lihat catatan. | Kontrol item data selalu berisi elemen teks utama yang akan dikenali pengguna sebagai pengidentifikasi untuk item tersebut. |
Tabel berikut mencantumkan pola kontrol Automation UI yang diperlukan untuk didukung oleh semua kontrol item data. Untuk informasi selengkapnya tentang pola kontrol, lihat Gambaran Umum Pola Kontrol Automasi UI .
Pola Kontrol | Dukung | Catatan |
---|---|---|
IExpandCollapseProvider | Tergantung | Jika item data dapat diperluas atau diciutkan untuk menampilkan dan menyembunyikan informasi, pola kontrol ExpandCollapse harus didukung. |
IGridItemProvider | Tergantung | Item data akan mendukung pola kontrol GridItem saat kumpulan item data tersedia dalam kontainer yang dapat dinavigasi secara spasial item-ke-item. |
IScrollItemProvider | Tergantung | Semua item data mendukung kemampuan untuk digulir ke tampilan dengan pola kontrol ScrollItem saat kontainer data mereka memiliki lebih banyak item daripada yang dapat pas di layar. |
ISelectionItemProvider | Tergantung | Kemampuan untuk memilih item data bergantung pada konten. |
ITableItemProvider | Tergantung | Jika item data terkandung dalam jenis kontrol DataGrid yang memiliki elemen header, item tersebut harus mendukung pola kontrol TableItem. |
IToggleProvider | Tergantung | Jika item data berisi status yang dapat diputar, item data harus mendukung pola kontrol Alihkan. |
IValueProvider | Tergantung | Jika teks utama item data dapat diedit, pola kontrol Nilai harus didukung. |
Karena daftar besar sering divirtualisasi dalam kerangka kerja UI untuk membantu performa, klien Automation UI tidak dapat menggunakan fitur kueri Automation UI untuk mencari konten pohon penuh dengan cara yang sama seperti yang dapat dilakukan dalam kontainer item lainnya. Klien harus menggulir item ke dalam tampilan (atau memperluas kontrol untuk menampilkan semua opsi yang tersedia) sebelum mengakses kumpulan informasi lengkap dari item data.
Saat memanggil SetFocus pada elemen Automation UI untuk item data, Microsoft Windows Explorer berhasil mengembalikan dan menyebabkan fokus diatur ke kontrol Edit dalam subtree item data.
Tabel berikut mencantumkan peristiwa Automasi UI yang diperlukan kontrol item data untuk didukung. Untuk informasi selengkapnya tentang peristiwa, lihat Gambaran Umum Peristiwa Automasi UI .
Peristiwa Automasi UI | Catatan |
---|---|
UIA_AutomationFocusChangedEventId | |
UIA_BoundingRectanglePropertyId peristiwa yang diubah properti. | |
UIA_ExpandCollapseExpandCollapseStatePropertyId peristiwa yang diubah properti. | Jika kontrol mendukung pola kontrol ExpandCollapse, kontrol harus mendukung peristiwa ini. |
UIA_Invoke_InvokedEventId | Jika kontrol mendukung pola kontrol Invoke, kontrol harus mendukung peristiwa ini. |
UIA_IsEnabledPropertyId peristiwa yang diubah properti. | Jika kontrol mendukung propertiIsEnabled, kontrol harus mendukung peristiwa ini. |
UIA_IsOffscreenPropertyId peristiwa yang diubah properti. | Jika kontrol mendukung propertiIsOffscreen, kontrol harus mendukung peristiwa ini. |
UIA_ItemStatusPropertyId peristiwa yang diubah properti. | Jika kontrol mendukung propertiItemStatus, kontrol harus mendukung peristiwa ini. |
UIA_NamePropertyId peristiwa yang diubah properti. | |
UIA_SelectionItem_ElementAddedToSelectionEventId | Jika kontrol mendukung pola kontrol SelectionItem, kontrol harus mendukung peristiwa ini. |
UIA_SelectionItem_ElementRemovedFromSelectionEventId | Jika kontrol mendukung pola kontrol SelectionItem, kontrol harus mendukung peristiwa ini. |
UIA_SelectionItem_ElementSelectedEventId | Jika kontrol mendukung pola kontrol SelectionItem, kontrol harus mendukung peristiwa ini. |
UIA_StructureChangedEventId | |
UIA_ToggleToggleStatePropertyId peristiwa yang diubah properti. | Jika kontrol mendukung pola kontrol Toggle, kontrol harus mendukung peristiwa ini. |
UIA_ValueValuePropertyId peristiwa yang diubah properti. | Jika kontrol mendukung pola kontrol Nilai, kontrol harus mendukung peristiwa ini. |
Gambar berikut mengilustrasikan jenis kontrol DataItem dalam kontrol tampilan daftar.
Tampilan kontrol dan tampilan konten pohon Automation UI yang berkaitan dengan kontrol item data ditampilkan di bawah ini. Pola kontrol untuk setiap elemen otomatisasi ditampilkan dalam tanda kurung. Grup "Contoso" juga merupakan bagian dari kisi kontrol host kisi data. Untuk contoh struktur kisi tingkat yang lebih tinggi, lihat Jenis Kontrol DataGrid.
Pohon Automasi UI - Tampilan Kontrol | Pohon Automasi UI - Tampilan Konten |
---|---|
|
|
Jika kisi mewakili daftar item yang dapat dipilih, elemen UI yang dapat dipilih yang sesuai dapat diekspos dengan jenis kontrol ListItem, bukan tipe kontrol DataItem. Dalam contoh sebelumnya, elemen DataItem ("Receivable.doc Akun" dan "Akun Payable.doc") di bawah Grup ("Contoso") dapat ditingkatkan dengan mengeksposnya sebagai jenis kontrol ListItem karena jenis tersebut sudah mendukung pola kontrol SelectionItem.
-
Konseptual