Mengontrol pola dan antarmuka

Mencantumkan pola kontrol Microsoft UI Automation, kelas yang digunakan klien untuk mengaksesnya, dan penyedia antarmuka yang digunakan untuk mengimplementasikannya.

Tabel dalam topik ini menjelaskan pola kontrol Microsoft UI Automation. Tabel ini juga mencantumkan kelas yang digunakan oleh klien UI Automation untuk mengakses pola kontrol dan antarmuka yang digunakan oleh penyedia UI Automation untuk mengimplementasikannya. Kolom pola Kontrol memperlihatkan nama pola dari perspektif klien UI Automation, sebagai nilai konstan yang tercantum dalam Pengidentifikasi Properti Ketersediaan Pola Kontrol. Dari perspektif penyedia UI Automation, masing-masing pola ini adalah PatternInterface nama konstanta. Kolom Provider interface menunjukkan nama antarmuka Microsoft.UI.Xaml.Automation.Provider yang diimplementasikan oleh penyedia untuk menawarkan pola ini untuk kontrol XAML kustom.

Untuk informasi selengkapnya tentang cara menerapkan rekan otomatisasi kustom yang mengekspos pola kontrol dan mengimplementasikan antarmuka, lihat Rekan otomatisasi kustom.

Ketika Anda menerapkan pola kontrol, Anda juga harus berkonsultasi dengan dokumentasi penyedia UI Automation yang menjelaskan beberapa harapan yang akan dimiliki klien dari pola kontrol terlepas dari kerangka kerja UI mana yang digunakan untuk mengimplementasikannya. Beberapa informasi yang tercantum dalam dokumentasi penyedia UI Automation umum akan memengaruhi cara Anda menerapkan komponen dan mendukung pola tersebut dengan benar. Lihat Menimplementasikan Pola Kontrol UI Automation, dan lihat halaman yang mendokumentasikan pola yang ingin Anda terapkan.

Pola kontrol Antarmuka penyedia WinUI Setara dengan sistem UWP lama Deskripsi
Annotation IAnnotationProvider IAnnotationProvider Digunakan untuk mengekspos properti anotasi dalam dokumen.
Dok IDockProvider IDockProvider Digunakan untuk kontrol yang dapat ditampung dalam kontainer docking. Misalnya, toolbar atau palet alat.
Drag IDragProvider IDragProvider Digunakan untuk mendukung kontrol yang dapat diseret, atau kontrol dengan item yang dapat diseret.
DropTarget IDropTargetProvider IDropTargetProvider Digunakan untuk mendukung kontrol yang dapat menjadi target operasi seret dan jatuhkan.
ExpandCollapse IExpandCollapseProvider IExpandCollapseProvider Digunakan untuk mendukung kontrol yang tampilan visualnya dapat diperluas untuk menampilkan lebih banyak konten dan menutup untuk menyembunyikan konten.
Grid IGridProvider IGridProvider Digunakan untuk kontrol yang mendukung fungsionalitas kisi seperti mengubah ukuran dan bergerak menuju sel yang ditentukan. Perhatikan bahwa Grid itu sendiri tidak menerapkan pola ini karena menyediakan tata letak tetapi bukan kontrol.
GridItem IGridItemProvider IGridItemProvider Diperuntukkan untuk kontrol yang memiliki sel dalam tabel.
Memohon IInvokeProvider IInvokeProvider Digunakan untuk kontrol yang dapat dipanggil, seperti Tombol.
ItemContainer IItemContainerProvider IItemContainerProvider Memungkinkan aplikasi menemukan elemen dalam kontainer, seperti daftar virtual.
MultipleView IMultipleViewProvider IMultipleViewProvider Digunakan untuk kontrol yang dapat beralih di antara beberapa representasi dari kumpulan informasi, data, atau elemen yang sama.
ObjectModel IObjectModelProvider IObjectModelProvider Digunakan untuk mengekspos penunjuk ke model objek yang mendasar dari dokumen.
RangeValue IRangeValueProvider IRangeValueProvider Digunakan untuk kontrol yang memiliki rentang nilai yang dapat diterapkan ke kontrol. Misalnya, kontrol spinner yang berisi tahun mungkin memiliki kisaran 1900 hingga tahun ini, sementara kontrol spinner lain yang menyajikan bulan akan memiliki kisaran 1 hingga 12.
Scroll IScrollProvider IScrollProvider Digunakan untuk kontrol yang dapat menggulir. Misalnya, kontrol yang memiliki bilah gulir yang aktif ketika ada lebih banyak informasi daripada yang dapat ditampilkan di area kontrol yang dapat dilihat.
ScrollItem IScrollItemProvider IScrollItemProvider Digunakan untuk kontrol yang memiliki item individual dalam daftar yang dapat digulir. Misalnya, kontrol daftar yang memiliki item-item terpisah dalam daftar yang digulir, seperti kotak kombo.
Pilihan ISelectionProvider ISelectionProvider Digunakan untuk kontrol kontainer pilihan. Misalnya, ListBox dan ComboBox.
SelectionItem ISelectionItemProvider ISelectionItemProvider Digunakan untuk item individual dalam kontrol kontainer pilihan, seperti kotak daftar dan kotak kombo.
Spreadsheet ISpreadsheetProvider ISpreadsheetProvider Digunakan untuk mengekspos konten spreadsheet atau dokumen berbasis kisi lainnya.
SpreadsheetItem ISpreadsheetItemProvider ISpreadsheetItemProvider Digunakan untuk memperlihatkan properti sel dalam lembar bentang atau dokumen berbasis grid lainnya.
Gaya IStylesProvider IStylesProvider Digunakan untuk menjelaskan elemen UI yang memiliki gaya, warna isian, pola isian, atau bentuk tertentu.
SynchronizedInput ISynchronizedInputProvider ISynchronizedInputProvider Memungkinkan UI Automation aplikasi klien untuk mengarahkan input mouse atau keyboard ke elemen UI tertentu.
Tabel ITableProvider ITableProvider Digunakan untuk kontrol yang memiliki kisi serta informasi penanda. Misalnya, kontrol kalender tabular.
TableItem ITableItemProvider ITableItemProvider Digunakan untuk item dalam tabel.
Teks ITextProvider ITextProvider Digunakan untuk mengedit kontrol dan dokumen yang mengekspos informasi tekstual. Lihat juga ITextRangeProvider dan ITextProvider2.
TextChild ITextChildProvider ITextChildProvider Digunakan untuk mengakses induk terdekat elemen yang mendukung pola kontrol Teks.
TextEdit Tidak ada kelas terkelola yang tersedia Tidak ada kelas terkelola yang tersedia Menyediakan akses ke kontrol yang memodifikasi teks, misalnya kontrol yang melakukan koreksi otomatis atau mengaktifkan komposisi input melalui Editor Metode Input (IME).
TextRange ITextRangeProvider ITextRangeProvider Menyediakan akses ke rentang teks berkelanjutan dalam kontainer teks yang mengimplementasikan ITextProvider. Lihat juga ITextRangeProvider2.
Beralih IToggleProvider IToggleProvider Digunakan untuk kontrol yang statusnya dapat ditukar. Misalnya, Kotak Centang dan item menu yang dapat dicentang.
Mengubah ITransformProvider ITransformProvider Digunakan untuk kontrol yang dapat diubah ukurannya, dipindahkan, dan diputar. Penggunaan umum untuk pola kontrol Transformasi ada di perancang, formulir, editor grafis, dan aplikasi gambar.
Nilai IValueProvider IValueProvider Memungkinkan klien untuk mendapatkan atau menetapkan nilai pada kontrol yang tidak mendukung rentang nilai.
VirtualizedItem IVirtualizedItemProvider IVirtualizedItemProvider Mengekspos item di dalam kontainer yang divirtualisasi dan perlu dibuat dapat diakses sepenuhnya sebagai elemen UI Automation.
Jendela IWindowProvider IWindowProvider Mengekspos informasi khusus untuk windows, konsep mendasar untuk sistem operasi Microsoft Windows. Contoh kontrol yang merupakan jendela adalah jendela anak dan dialog.

Nota

Tidak semua pola ini diimplementasikan oleh kontrol XAML yang ada. Beberapa antarmuka pola hanya ada untuk mempertahankan paritas dengan definisi pola kerangka kerja UI Automation umum dan untuk mendukung skenario peer otomatisasi yang memerlukan implementasi yang sepenuhnya kustom.