Bagikan melalui


Cara menerapkan pengakses peristiwa kustom (Panduan Pemrograman C#)

Peristiwa adalah jenis khusus delegasi multicast yang hanya dapat dipanggil dari dalam kelas tempatnya dideklarasikan. Kode klien berlangganan peristiwa dengan memberikan referensi ke metode yang harus dipanggil saat peristiwa diaktifkan. Metode ini ditambahkan ke daftar pemanggilan delegasi melalui pengakses peristiwa, yang menyerupai pengakses properti, kecuali bahwa pengakses peristiwa diberi nama add dan remove. Dalam kebanyakan kasus, Anda tidak perlu menyediakan pengakses peristiwa kustom. Ketika tidak ada pengakses peristiwa kustom yang disediakan dalam kode Anda, pengompilasi akan menambahkannya secara otomatis. Namun, dalam beberapa kasus, Anda mungkin harus memberikan perilaku kustom. Salah satu kasus tersebut ditampilkan dalam topik Cara mengimplementasikan peristiwa antarmuka.

Contoh

Contoh berikut menunjukkan cara menerapkan penambahan kustom dan menghapus pengakses peristiwa. Meskipun Anda dapat mengganti kode apa pun di dalam pengakses, kami sarankan Anda mengunci peristiwa sebelum menambahkan atau menghapus metode penanganan aktivitas baru.

event EventHandler IDrawingObject.OnDraw
{
    add
    {
        lock (objectLock)
        {
            PreDrawEvent += value;
        }
    }
    remove
    {
        lock (objectLock)
        {
            PreDrawEvent -= value;
        }
    }
}

Lihat juga