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 dibandingkan dengan 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 Otomatisasi 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

Tabel berikut ini menggambarkan kontrol umum dan tampilan konten pohon Automation UI yang berkaitan dengan kontrol item data 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
  • 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 yang Relevan

Tabel berikut mencantumkan properti Otomatisasi UI yang nilai atau definisinya sangat relevan dengan jenis kontrol DataItem. 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. Didukung jika ada persegi panjang pembatas. Jika tidak setiap titik dalam persegi panjang pembatas dapat diklik, dan elemen melakukan pengujian hit khusus, mengambil alih dan memberikan titik yang dapat diklik.
UIA_ControlTypePropertyId DataItem
UIA_IsContentElementPropertyId TRUE Kontrol item data harus selalu berupa konten.
UIA_IsControlElementPropertyId TRUE Kontrol item data harus selalu berupa kontrol.
UIA_IsKeyboardFocusablePropertyId Lihat catatan. Jika kontrol dapat menerima fokus keyboard, maka 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 ketika status elemen berubah.
UIA_ItemTypePropertyId Lihat catatan. Ini adalah nilai string yang disampaikan kepada pengguna akhir tentang objek dasar yang diwakili item. Contohnya termasuk "File Media" dan "Kontak".
UIA_LabeledByPropertyId Null Kontrol item data tidak memiliki label teks statik.
UIA_LocalizedControlTypePropertyId Lihat catatan. String yang dilokalkan sesuai dengan jenis kontrol DataItem . Nilai defaultnya adalah "item data" untuk en-US atau English (Amerika Serikat).
UIA_NamePropertyId Lihat catatan. Kontrol item data selalu berisi elemen teks utama yang akan dikenali pengguna sebagai pengidentifikasi untuk item.

 

Pola Kontrol yang Diperlukan

Tabel berikut mencantumkan pola kontrol Otomatisasi UI yang diperlukan untuk didukung oleh semua kontrol item data. Untuk 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 kontrol ExpandCollapse harus didukung.
IGridItemProvider Bergantung Item data akan mendukung pola kontrol GridItem 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 kontrol ScrollItem ketika kontainer data mereka memiliki lebih banyak item daripada yang dapat dipaskan di layar.
ISelectionItemProvider Bergantung Kemampuan untuk memilih item data bergantung pada konten.
ITableItemProvider Bergantung Jika item data terkandung dalam jenis kontrol DataGrid yang memiliki elemen header, item tersebut harus mendukung pola kontrol TableItem .
IToggleProvider Bergantung Jika item data berisi status yang dapat diputar, item data harus mendukung pola kontrol Alihkan .
IValueProvider Bergantung Jika teks utama item data dapat diedit, pola kontrol Nilai harus didukung.

 

Bekerja dengan DataItems di Daftar Besar

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 dilakukannya di kontainer item lain. Klien harus menggulir item ke tampilan (atau memperluas kontrol untuk menampilkan semua opsi yang tersedia) sebelum mengakses sekumpulan informasi lengkap dari item data.

Saat memanggil SetFocus pada elemen Automation UI untuk item data, Microsoft Windows Explorer berhasil kembali dan menyebabkan fokus diatur ke kontrol Edit dalam subtree item data.

Peristiwa yang Diperlukan

Tabel berikut mencantumkan peristiwa Otomatisasi UI yang diperlukan kontrol item data untuk didukung. Untuk informasi selengkapnya tentang peristiwa, lihat Gambaran Umum Peristiwa UI Automation.

Peristiwa UI Automation 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 pemanggilan , kontrol harus mendukung peristiwa ini.
UIA_IsEnabledPropertyId peristiwa yang diubah properti. Jika kontrol mendukung properti IsEnabled , kontrol harus mendukung peristiwa ini.
UIA_IsOffscreenPropertyId peristiwa yang diubah properti. Jika kontrol mendukung properti IsOffscreen , kontrol harus mendukung peristiwa ini.
UIA_ItemStatusPropertyId peristiwa yang diubah properti. Jika kontrol mendukung properti ItemStatus , kontrol harus mendukung kejadian ini.
UIA_NamePropertyId peristiwa yang diubah properti.
UIA_SelectionItem_ElementAddedToSelectionEventId Jika kontrol mendukung pola kontrol SelectionItem , kontrol harus mendukung kejadian ini.
UIA_SelectionItem_ElementRemovedFromSelectionEventId Jika kontrol mendukung pola kontrol SelectionItem , kontrol harus mendukung kejadian ini.
UIA_SelectionItem_ElementSelectedEventId Jika kontrol mendukung pola kontrol SelectionItem , kontrol harus mendukung kejadian ini.
UIA_StructureChangedEventId
UIA_ToggleToggleStatePropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol Hidupkan/Matikan , kontrol harus mendukung kejadian ini.
UIA_ValueValuePropertyId peristiwa yang diubah properti. Jika kontrol mendukung pola kontrol Nilai , kontrol harus mendukung peristiwa ini.

 

Contoh Jenis Kontrol DataItem

Gambar berikut mengilustrasikan jenis kontrol DataItem dalam kontrol tampilan daftar.

cuplikan layar kontrol tampilan daftar dengan jenis kontrol dataitem

Tampilan kontrol dan tampilan konten pohon Automation UI yang berkaitan dengan kontrol item data ditampilkan di bawah ini. Pola kontrol untuk setiap elemen Azure Automation ditunjukkan 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 Azure Automation Antarmuka Pengguna - Tampilan Kontrol Pohon Azure Automation Antarmuka Pengguna - Tampilan Konten
  • Grup "Contoso" (Tabel, Kisi)
    • DataItem "Accounts Receivable.doc" (TableItem, GridItem, SelectionItem, Invoke)
      • Gambar "Receivable.doc Akun"
      • Edit "Nama" (TableItem, GridItem, Nilai "Akun Receivable.doc")
      • Edit "Tanggal dimodifikasi" (TableItem, GridItem, Nilai "25/8/2006 15:29")
      • Edit "Ukuran" (GridItem, TableItem, Nilai "11,0 KB")
    • DataItem "Accounts Payable.doc" (TableItem, GridItem, SelectionItem, Invoke)
      • ...
  • Grup "Contoso" (Tabel, Kisi)
    • DataItem "Accounts Receivable.doc" (TableItem, GridItem, SelectionItem, Invoke)
      • Gambar "Receivable.doc Akun"
      • Edit "Nama" (TableItem, GridItem, Nilai "Akun Receivable.doc")
      • Edit "Tanggal dimodifikasi" (TableItem, GridItem, Nilai "25/8/2006 15:29")
      • Edit "Ukuran" (GridItem, TableItem, Nilai "11,0 KB")
    • DataItem "Accounts Payable.doc" (TableItem, GridItem, SelectionItem, Invoke)
      • ...

 

Jika kisi mewakili daftar item yang dapat dipilih, elemen UI yang dapat dipilih terkait dapat diekspos dengan jenis kontrol ListItem alih-alih jenis 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

Gambaran Umum Jenis Kontrol UI Automation

Gambaran Umum UI Automation