Dukungan UI Automation untuk Jenis Kontrol DataItem
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 berisi informasi tentang dukungan Microsoft UI Automation untuk jenis kontrol DataItem. Dalam UI Automation, jenis kontrol adalah serangkaian kondisi yang harus dipenuhi kontrol agar dapat menggunakan properti ControlTypeProperty. Kondisi ini mencakup pedoman khusus untuk struktur pohon UI Automation, nilai properti dan pola kontrol UI Automation.
Entri dalam daftar Kontak adalah contoh kontrol item data. Kontrol item data berisi informasi yang menarik bagi pengguna akhir. Ini lebih rumit dibandingkan dengan item daftar sederhana karena berisi informasi yang lebih kaya.
Bagian berikut menentukan struktur pohon UI Automation, properti, pola kontrol, dan peristiwa yang diperlukan untuk jenis kontrol DataItem. Persyaratan UI Automation berlaku untuk semua kontrol item data, baik Windows Presentation Foundation (WPF), Win32, atau Formulir Windows.
Struktur Pohon UI Automation yang Diperlukan
Tabel berikut menggambarkan tampilan kontrol dan tampilan konten pohon UI Automation yang berkaitan dengan kontrol item data dan menjelaskan apa yang dapat ditampung dalam setiap tampilan. Untuk informasi selengkapnya tentang pohon UI Automation, lihat Ringkasan Pohon UI Automation.
Pohon Azure Automation Antarmuka Pengguna - Tampilan Kontrol | Pohon UI Automation - Tampilan Konten |
---|---|
DataItem - Bervariasi (0 atau lebih; dapat disusun dalam hierarki) |
DataItem - Bervariasi (0 atau lebih; dapat disusun dalam hierarki) |
Elemen item data dalam kisi data dapat meng-host 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.
Properti Azure Automation Antarmuka Pengguna yang Diperlukan
Tabel berikut mencantumkan properti yang nilai atau definisinya sangat relevan dengan kontrol item data. Untuk mendapatkan informasi selengkapnya tentang properti UI Automation, lihat Properti UI Automation untuk Klien.
Properti | Nilai | Catatan |
---|---|---|
AutomationIdProperty | Lihat catatan. | Nilai properti ini harus unik di semua kontrol dalam aplikasi. |
BoundingRectangleProperty | Lihat catatan. | Persegi terluar yang berisi seluruh kontrol. |
ClickablePointProperty | Lihat catatan. | Didukung jika ada persegi panjang pembatas. Jika tidak setiap titik dalam kotak pembatas dapat diklik, dan Anda melakukan pengujian hit khusus, maka ambil alih dan berikan titik yang dapat diklik. |
ControlTypeProperty | DataItem | Nilai ini sama untuk semua kerangka kerja UI. |
IsContentElementProperty | Benar | Kontrol item data harus selalu berupa konten. |
IsControlElementProperty | Benar | Kontrol item data harus selalu berupa kontrol. |
IsKeyboardFocusableProperty | Lihat catatan. | Jika kontrol dapat menerima fokus keyboard, maka kontrol harus mendukung properti ini. |
ItemStatusProperty | Lihat catatan. | Jika kontrol berisi status yang sedang diperbarui secara dinamis, properti ini harus didukung agar teknologi bantu dapat menerima pembaruan saat status elemen berubah. |
ItemTypeProperty | Lihat catatan. | Ini adalah nilai string yang disampaikan kepada pengguna akhir tentang objek dasar yang diwakili item. Contohnya adalah "File Media" atau "Kontak". |
LabeledByProperty | Null |
Kontrol item data tidak memiliki label teks statik. |
LocalizedControlTypeProperty | "data item" | String yang dilokalkan yang sesuai dengan jenis kontrol DataItem. |
NameProperty | Lihat catatan. | Kontrol item data selalu berisi elemen teks utama yang berkaitan dengan apa yang akan dikaitkan pengguna sebagai pengidentifikasi paling semantik untuk item tersebut. |
Pola Kontrol Automasi Antarmuka Pengguna yang Diperlukan
Tabel berikut mencantumkan pola kontrol Microsoft UI Automation yang perlu didukung oleh semua kontrol item data. Untuk mendapatkan informasi selengkapnya tentang pola kontrol, lihat Gambaran Umum Pola Kontrol UI Automation.
Pola Kontrol | Dukungan | Catatan |
---|---|---|
IExpandCollapseProvider | Bergantung | Jika item data dapat diperluas atau diciutkan untuk menampilkan dan menyembunyikan informasi, pola Luaskan Ciutkan harus didukung. |
IGridItemProvider | Bergantung | Item data akan mendukung pola Item Kisi saat kumpulan item data tersedia dalam kontainer yang dapat dinavigasi secara spasial item-ke-item. |
IScrollItemProvider | Bergantung | Semua item data mendukung kemampuan untuk digulir ke tampilan dengan pola Item Gulir saat kontainer datanya memiliki lebih banyak item daripada yang dapat dimuat di layar. |
ISelectionItemProvider | Ya | Semua item data harus mendukung pola Item Pilihan untuk menunjukkan kapan item dipilih. |
ITableItemProvider | Bergantung | Jika item data ditampung dalam jenis kontrol Kisi Data, pola ini akan didukung. |
IToggleProvider | Bergantung | Jika item data berisi status yang dapat diedarkan. |
IValueProvider | Bergantung | Jika teks utama item data dapat diedit, pola Nilai harus didukung. |
Bekerja dengan Item Data dalam Daftar Besar
Daftar besar sering kali berupa data yang divirtualisasi dalam kerangka kerja UI untuk membantu dalam performa. Dikarenakan hal ini, klien UI Automation tidak dapat menggunakan fitur kueri UI Automation untuk mengekstrak konten pohon lengkap dengan cara yang sama seperti yang dapat dilakukan di kontainer item lainnya. Klien harus menggulir item ke tampilan (atau memperluas kontrol untuk menampilkan semua opsi yang berguna) sebelum mengakses kumpulan informasi lengkap dari item data.
Saat memanggil SetFocus
di elemen UI Automation untuk item data, kasus Microsoft Windows Explorer akan berhasil ditampilkan dan menyebabkan fokus diatur ke Edit dalam sub-pohon item data.
Peristiwa UI Automation yang Diperlukan
Tabel berikut mencantumkan peristiwa UI Automation yang harus didukung oleh semua kontrol item data. Untuk mendapatkan informasi selengkapnya tentang peristiwa, lihat Gambaran Umum Peristiwa UI Automation.
Peristiwa UI Automation | Dukungan | Catatan |
---|---|---|
AutomationFocusChangedEvent | Wajib | Tidak |
BoundingRectangleProperty peristiwa perubahan properti. | Wajib | Tidak |
IsEnabledProperty peristiwa perubahan properti. | Wajib | Tidak |
IsOffscreenProperty peristiwa perubahan properti. | Wajib | Tidak |
NameProperty peristiwa perubahan properti. | Wajib | Tidak |
StructureChangedEvent | Wajib | Tidak |
InvokedEvent | Bergantung | Tidak |
ExpandCollapseStateProperty peristiwa perubahan properti. | Bergantung | Tidak |
ElementAddedToSelectionEvent | Wajib | Tidak |
ElementRemovedFromSelectionEvent | Wajib | Tidak |
ElementSelectedEvent | Wajib | Tidak |
ToggleStateProperty peristiwa perubahan properti. | Bergantung | Tidak |
ValueProperty peristiwa perubahan properti. | Bergantung | Tidak |
Contoh Jenis Kontrol DataItem
Gambar berikut mengilustrasikan jenis kontrol DataItem dalam kontrol Tampilan Daftar dengan dukungan untuk informasi kaya untuk kolom.
Tampilan Kontrol dan Tampilan Konten pohon UI Automation yang berkaitan dengan kontrol item data ditampilkan di bawah ini. Pola kontrol untuk setiap elemen automasi ditunjukkan dalam tanda kurung. Grup "Contoso" juga merupakan bagian dari kisi kontrol host Kisi Data.
Pohon Azure Automation Antarmuka Pengguna - Tampilan Kontrol | Pohon UI Automation - Tampilan Konten |
---|---|
- Grup "Contoso" (Tabel, Kisi) - DataItem "Accounts Receivable.doc" (TableItem, GridItem, SelectionItem, Invoke) - Gambar "Accounts Receivable.doc" - Edit "Name" (TableItem, GridItem, Value "Accounts Receivable.doc") - Edit "Date modified" (TableItem, GridItem, Value "8/25/2006 3:29 PM") - Edit "Size" (GridItem, TableItem, Value "11.0 KB) - DataItem "Accounts Payable.doc" (TableItem, GridItem, SelectionItem, Invoke) - ... |
- Grup "Contoso" (Tabel, Kisi) - DataItem "Accounts Receivable.doc" (TableItem, GridItem, SelectionItem, Invoke) - Gambar "Accounts Receivable.doc" - Edit "Name" (TableItem, GridItem, Value "Accounts Receivable.doc") - Edit "Date modified" (TableItem, GridItem, Value "8/25/2006 3:29 PM") - Edit "Size" (GridItem, TableItem, Value "11.0 KB) - DataItem "Accounts Payable.doc" (TableItem, GridItem, SelectionItem, Invoke) - … |
Jika kisi mewakili daftar item yang dapat dipilih, elemen UI yang sesuai dapat diekspos dengan jenis kontrol ListItem, bukan jenis kontrol DataItem. Dalam contoh sebelumnya, elemen DataItem ("Accounts Receivable.doc" dan "Accounts Payable.doc") di bagian Grup ("Contoso") dapat ditingkatkan dengan mengeksposnya sebagai jenis kontrol ListItem karena jenis tersebut sudah mendukung pola kontrol SelectionItem.