Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Peristiwa untuk kontrol (dan untuk formulir) umumnya diatur melalui Visual Designer Visual Studio untuk Formulir Windows. Mengatur peristiwa melalui Visual Designer dikenal sebagai menangani peristiwa saat tahap desain. Anda juga dapat menangani peristiwa secara dinamis dalam kode, yang dikenal sebagai menangani peristiwa saat runtime. Peristiwa yang dibuat pada runtime memungkinkan Anda menghubungkan penanganan aktivitas secara dinamis berdasarkan apa yang saat ini dilakukan aplikasi Anda.
Menangani peristiwa pada saat desain
Di Visual Studio, gunakan Visual Designer untuk mengelola handler untuk mengontrol peristiwa. Visual Designer akan menghasilkan kode handler dan menambahkannya ke peristiwa untuk Anda.
Mengatur handler
Gunakan panel Properti untuk menambahkan atau mengatur handler peristiwa:
Buka Visual Designer dari formulir yang berisi kontrol yang ingin diubah.
Pilih kontrol.
Ubah mode panel Properti menjadi Peristiwa dengan menekan tombol peristiwa (
).Temukan peristiwa yang ingin Anda tambahkan handlernya, misalnya, peristiwa Klik :
Lakukan salah satu hal berikut ini:
Klik dua kali peristiwa untuk menghasilkan handler baru, akan kosong jika tidak ada handler yang ditetapkan. Jika tidak kosong, tindakan ini membuka kode untuk formulir dan menavigasi ke handler yang ada.
Gunakan kotak pilihan (
) untuk memilih handler yang sudah ada.Kotak pilihan akan mencantumkan semua metode yang memiliki tanda tangan metode yang kompatibel untuk penanganan aktivitas.
Menghapus handler
Untuk menghapus penanganan aktivitas, Anda tidak bisa hanya menghapus kode handler yang ada di file code-behind formulir, kode tersebut masih dirujuk oleh perancang. Gunakan panel Properti untuk menghapus handler peristiwa:
Buka Visual Designer dari formulir yang berisi kontrol yang ingin diubah.
Pilih kontrol.
Ubah mode panel Properti menjadi Peristiwa dengan menekan tombol peristiwa (
).Temukan peristiwa yang berisi handler yang ingin Anda hapus, misalnya, peristiwa Klik :
Klik kanan pada peristiwa dan pilih Reset.
Menangani sebuah event pada waktu proses
Anda biasanya menambahkan penanganan aktivitas ke kontrol pada waktu desain melalui Visual Designer. Namun, Anda dapat membuat kontrol pada runtime, yang mengharuskan Anda untuk menambahkan penanganan aktivitas dalam kode. Menambahkan handler dalam kode juga memberi Anda kesempatan untuk menambahkan beberapa handler ke peristiwa yang sama.
Menambahkan handler
Contoh berikut menunjukkan cara membuat kontrol dan menambahkan penanganan aktivitas. Kontrol ini dibuat di penanganan aktivitas tombol Button.Click yang berbeda. Saat Tombol1 ditekan. Kode memindahkan dan mengubah ukuran tombol baru. Peristiwa tombol baru Click ditangani oleh metode MyNewButton_Click. Agar tombol baru dapat muncul, tombol tersebut harus ditambahkan ke koleksi dalam formulir Controls. Ada juga kode untuk menghapus Button1.Click handler peristiwa, ini dibahas di bagian Hapus handler .
private void button1_Click(object sender, EventArgs e)
{
// Create and add the button
Button myNewButton = new()
{
Location = new Point(10, 10),
Size = new Size(120, 25),
Text = "Do work"
};
// Handle the Click event for the new button
myNewButton.Click += MyNewButton_Click;
this.Controls.Add(myNewButton);
// Remove this button handler so the user cannot do this twice
button1.Click -= button1_Click;
}
private void MyNewButton_Click(object sender, EventArgs e)
{
}
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'Create and add the button
Dim myNewButton As New Button() With {.Location = New Point(10, 10),
.Size = New Size(120, 25),
.Text = "Do work"}
'Handle the Click event for the new button
AddHandler myNewButton.Click, AddressOf MyNewButton_Click
Me.Controls.Add(myNewButton)
'Remove this button handler so the user cannot do this twice
RemoveHandler Button1.Click, AddressOf Button1_Click
End Sub
Private Sub MyNewButton_Click(sender As Object, e As EventArgs)
End Sub
Untuk menjalankan kode ini, lakukan hal berikut ke formulir dengan Visual Designer Visual Studio:
- Tambahkan tombol baru ke formulir dan beri nama Button1.
- Ubah mode panel Properti menjadi Peristiwa dengan menekan tombol peristiwa (
). - Klik dua kali peristiwa Klik untuk menghasilkan handler. Tindakan ini membuka jendela kode dan menghasilkan metode kosong
Button1_Click. - Ganti kode metode dengan kode sebelumnya di atas.
Untuk informasi selengkapnya tentang peristiwa C#, lihat Peristiwa (C#) Untuk informasi selengkapnya tentang peristiwa Visual Basic, lihat Peristiwa (Visual Basic)
Menghapus pengendali
Bagian Tambahkan handler menggunakan beberapa kode untuk menunjukkan penambahan handler. Kode tersebut juga berisi panggilan untuk menghapus handler:
button1.Click -= button1_Click;
RemoveHandler Button1.Click, AddressOf Button1_Click
Sintaks ini dapat digunakan untuk menghapus pengendali acara dari acara apa pun.
Untuk informasi selengkapnya tentang peristiwa C#, lihat Peristiwa (C#) Untuk informasi selengkapnya tentang peristiwa Visual Basic, lihat Peristiwa (Visual Basic)
Cara menggunakan beberapa acara dengan handler yang sama
Dengan panel Properties di Visual Designer Visual Studio, Anda dapat memilih handler yang sama yang sudah digunakan dalam peristiwa lain. Ikuti petunjuk di bagian Atur handler untuk memilih handler yang sudah ada alih-alih membuat yang baru.
Di C#, handler dilampirkan ke peristiwa kontrol dalam kode desain form, yang diubah melalui Visual Designer. Untuk informasi selengkapnya tentang peristiwa C#, lihat Peristiwa (C#)
Visual Basic
Di Visual Basic, handler dilampirkan pada event kontrol dalam file code-behind formulir, tempat kode penanganan event dideklarasikan. Beberapa Handles kata kunci dapat ditambahkan ke kode penanganan aktivitas untuk menggunakannya dengan beberapa peristiwa. Visual Designer akan menghasilkan Handles kata kunci untuk Anda dan menambahkannya ke penanganan aktivitas. Namun, Anda dapat dengan mudah melakukan ini sendiri pada event kontrol mana pun dan penangan event, selama signature dari metode penangan cocok dengan event tersebut. Untuk informasi selengkapnya tentang peristiwa Visual Basic, lihat Peristiwa (Visual Basic)
Kode ini menunjukkan bagaimana metode yang sama dapat digunakan sebagai handler untuk dua peristiwa yang berbeda Button.Click :
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click, Button2.Click
'Do some work to handle the events
End Sub
Lihat juga
.NET Desktop feedback