Dukungan Automasi Antarmuka Pengguna untuk Tipe Kontrol MenuItem
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 memberikan informasi tentang dukungan Microsoft Automasi Antarmuka Pengguna untuk tipe kontrol MenuItem. Ini menggambarkan struktur pohon Microsoft Automasi Antarmuka Pengguna kontrol dan menyediakan properti dan pola kontrol yang diperlukan untuk tipe kontrol MenuItem.
Kontrol menu memungkinkan organisasi hierarki elemen yang terkait dengan perintah dan penangan peristiwa. Dalam aplikasi Microsoft Windows umum, bilah menu berisi beberapa item menu (seperti File, Edit, dan Jendela), dan setiap item menu menampilkan menu. Menu berisi kumpulan item menu (seperti Baru, Buka, dan Tutup), yang dapat diperluas untuk menampilkan item menu tambahan atau melakukan tindakan tertentu saat diklik. Item menu dapat dihosting di menu, bilah menu, atau bilah alat.
Bagian berikut menentukan struktur pohon, properti, pola kontrol, dan peristiwa Automasi Antarmuka Pengguna yang diperlukan untuk tipe kontrol MenuItem. Persyaratan UI Automation berlaku untuk semua kontrol daftar, baik Windows Presentation Foundation (WPF), Win32, atau Formulir Windows.
Struktur Pohon UI Automation yang Diperlukan
Tabel berikut menggambarkan tampilan kontrol dan tampilan konten pohon Automasi Antarmuka Pengguna yang berkaitan dengan kontrol item menu dan menjelaskan apa yang dapat terkandung dalam setiap tampilan. Untuk informasi selengkapnya tentang pohon UI Automation, lihat Gambaran Umum Pohon UI Automation.
Tampilan Kontrol | Tampilan Konten |
---|---|
MenuItem "Bantuan"
|
MenuItem "Bantuan" - MenuItem "Topik Bantuan" - MenuItem "Tentang Notepad" |
Tampilan kontrol dari kontrol item menu memiliki struktur pohon Automasi Antarmuka Pengguna yang ditunjukkan di atas. Perhatikan bahwa item menu Bantuan disertakan untuk mengilustrasikan struktur dengan lebih baik dalam menu khas ke hierarki submenu.
Untuk tampilan konten, Menu tidak ada di pohon Automasi Antarmuka Pengguna karena tidak menyampaikan informasi yang berarti kepada pengguna akhir.
Properti Azure Automation Antarmuka Pengguna yang Diperlukan
Tabel berikut mencantumkan properti Automasi Antarmuka Pengguna yang nilai atau definisinya sangat relevan dengan kontrol item menu. Untuk informasi selengkapnya tentang properti UI Automation, lihat Properti UI Automation untuk Klien.
Properti | Nilai | Deskripsi |
---|---|---|
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. |
IsKeyboardFocusableProperty | Lihat catatan. | Jika kontrol dapat menerima fokus keyboard, maka kontrol harus mendukung properti ini. |
NameProperty | Lihat catatan. | Kontrol item menu disertakan dalam tampilan konten pohon Automasi Antarmuka Pengguna dan diberi label sendiri dengan nama. |
LabeledByProperty | Null |
Tanpa label. |
ControlTypeProperty | MenuItem | Nilai ini sama untuk semua kerangka kerja UI. |
LocalizedControlTypeProperty | "menu item" | String lokal yang sesuai dengan tipe kontrol MenuItem. |
IsContentElementProperty | Benar | Kontrol item menu tidak pernah disertakan dalam tampilan konten pohon Automasi Antarmuka Pengguna. |
IsControlElementProperty | Benar | Kontrol item menu harus selalu disertakan dalam tampilan kontrol pohon Automasi Antarmuka Pengguna. |
Pola Kontrol Automasi Antarmuka Pengguna yang Diperlukan
Tabel berikut mencantumkan pola kontrol Automasi Antarmuka Pengguna yang diperlukan untuk didukung oleh kontrol item menu. Untuk informasi selengkapnya tentang pola kontrol, lihat Gambaran Umum Pola Kontrol Automasi Antarmuka Pengguna.
Properti Pola Kontrol | Dukungan | Catatan |
---|---|---|
IExpandCollapseProvider | Bergantung | Jika kontrol dapat diperluas atau diciutkan, terapkan IExpandCollapseProvider. |
IInvokeProvider | Bergantung | Jika kontrol menjalankan satu tindakan atau perintah, terapkan IInvokeProvider. |
IToggleProvider | Bergantung | Jika kontrol mewakili opsi yang dapat diaktifkan atau dinonaktifkan, terapkan IToggleProvider. |
ISelectionItemProvider | Bergantung | Jika kontrol digunakan untuk memilih dari daftar opsi di antara item menu, terapkan ISelectionItemProvider. |
Peristiwa Automasi Antarmuka Pengguna untuk Item Menu
Tabel berikut mencantumkan peristiwa Automasi Antarmuka Pengguna Microsoft yang terkait dengan kontrol item menu.
Kejadian | Dukungan | Penjelasan |
---|---|---|
InvokedEvent | Bergantung | Harus dinaikkan jika kontrol mendukung pola kontrol Invoke. |
ToggleStateProperty peristiwa perubahan properti. | Bergantung | Harus dinaikkan jika kontrol mendukung pola kontrol Toggle. |
ExpandCollapseStateProperty peristiwa perubahan properti. | Bergantung | Harus dinaikkan jika kontrol mendukung pola kontrol Expand Collapse. |
ElementSelectedEvent | Bergantung | Tidak ada. |
Peristiwa UI Automation yang Diperlukan
Tabel berikut mencantumkan peristiwa Automasi Antarmuka Pengguna yang harus didukung oleh semua kontrol item menu. Untuk informasi selengkapnya tentang acara, baca Gambaran Umum Peristiwa UI Automation.
Peristiwa UI Automation | Dukungan/Nilai | Catatan |
---|---|---|
InvokedEvent | Bergantung | Tidak |
ElementAddedToSelectionEvent | Bergantung | Tidak |
ElementRemovedFromSelectionEvent | Bergantung | Tidak |
ElementSelectedEvent | Bergantung | Tidak |
BoundingRectangleProperty peristiwa perubahan properti. | Wajib | Tidak |
IsOffscreenProperty peristiwa perubahan properti. | Wajib | Tidak |
IsEnabledProperty peristiwa perubahan properti. | Wajib | Tidak |
ExpandCollapseStateProperty peristiwa perubahan properti. | Bergantung | Tidak |
ToggleStateProperty peristiwa perubahan properti. | Bergantung | Tidak |
AutomationFocusChangedEvent | Wajib | Tidak |
StructureChangedEvent | Wajib | Tidak |
Masalah Lama
Pola Toggle hanya akan didukung ketika item menu Win32 diperiksa dan dapat ditentukan secara terprogram yang diperlukan untuk mendukung Pola Toggle. Karena item menu Win32 tidak mengekspos apakah ia memiliki kemampuan untuk diperiksa, Invoke Pattern akan didukung ketika item menu tidak diperiksa. Pengecualian akan dibuat untuk selalu mendukung Invoke Pattern bahkan untuk item menu yang seharusnya hanya mendukung Toggle Pattern. Hal ini agar klien tidak menjadi bingung bahwa elemen yang mendukung Invoke Pattern (ketika item menu tidak dicentang) tidak lagi mendukung pola setelah diperiksa.