Bagikan melalui


Pola Kontrol UI Automation untuk Klien

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.

Gambaran umum ini memperkenalkan pola kontrol untuk klien UI Automation. Ringkasan ini mencakup informasi tentang cara klien UI Automation dapat menggunakan pola kontrol untuk mengakses informasi tentang antarmuka pengguna (UI).

Pola kontrol menyediakan cara untuk mengategorikan dan mengekspos fungsionalitas kontrol secara independen dari jenis kontrol atau tampilan kontrol. Klien UI Automation dapat memeriksa AutomationElement untuk menentukan pola kontrol mana yang didukung dan yakin akan perilaku kontrol.

Untuk daftar lengkap pola kontrol, baca Gambaran Umum Pola Kontrol UI Automation.

Mendapatkan Pola Kontrol

Klien mengambil pola kontrol dari AutomationElement dengan memanggil AutomationElement.GetCachedPattern atau AutomationElement.GetCurrentPattern.

Klien dapat menggunakan metode GetSupportedPatterns atau properti IsPatternAvailable individu (misalnya, IsTextPatternAvailableProperty) untuk menentukan apakah suatu pola atau kelompok pola didukung di AutomationElement. Namun, lebih efisien untuk mencoba mendapatkan pola kontrol dan menguji referensi null daripada memeriksa properti yang didukung dan mengambil pola kontrol karena menghasilkan lebih sedikit panggilan lintas proses.

Contoh berikut menunjukkan cara mendapatkan TextPattern pola kontrol dari AutomationElement.

// Specify the control type we're looking for, in this case 'Document'
PropertyCondition cond = new PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.Document);

// target --> The root AutomationElement.
AutomationElement textProvider = target.FindFirst(TreeScope.Descendants, cond);

targetTextPattern = textProvider.GetCurrentPattern(TextPattern.Pattern) as TextPattern;

if (targetTextPattern == null)
{
    Console.WriteLine("Root element does not contain a descendant that supports TextPattern.");
    return;
}

Mengambil Properti pada Pola Kontrol

Klien dapat mengambil nilai properti pada pola kontrol dengan memanggil AutomationElement.GetCachedPropertyValue atau AutomationElement.GetCurrentPropertyValue dan mentransmisikan objek kembali ke jenis yang sesuai. Untuk informasi selengkapnya tentang properti UI Automation, lihat Properti UI Automation untuk Klien.

Selain metode GetPropertyValue, nilai properti dapat diambil melalui pengakses runtime bahasa umum (CLR) untuk mengakses properti UI Automation pada suatu pola.

Kontrol dengan Pola Variabel

Beberapa jenis kontrol mendukung pola yang berbeda tergantung pada statusnya atau cara kontrol digunakan. Contoh kontrol yang dapat memiliki pola variabel adalah tampilan daftar (gambar mini, ubin, ikon, daftar, detail), Bagan Microsoft Excel (Pai, Garis, Batang, Nilai Sel dengan rumus), area dokumen Microsoft Word (Normal, Tata Letak Web, Garis Luar, Tata Letak Cetak, Pratinjau Cetak), dan skin Microsoft Windows Media Player.

Kontrol yang menerapkan jenis kontrol kustom dapat memiliki rangkaian pola kontrol apa pun yang diperlukan untuk mewakili fungsionalitasnya.

Lihat juga