Form.FormClosing Kejadian
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Terjadi sebelum formulir ditutup.
public:
event System::Windows::Forms::FormClosingEventHandler ^ FormClosing;
public event System.Windows.Forms.FormClosingEventHandler FormClosing;
public event System.Windows.Forms.FormClosingEventHandler? FormClosing;
member this.FormClosing : System.Windows.Forms.FormClosingEventHandler
Public Custom Event FormClosing As FormClosingEventHandler
Jenis Acara
Contoh
Contoh berikut menunjukkan penggunaan anggota ini. Dalam contoh, penanganan aktivitas melaporkan kemunculan FormClosing peristiwa. Laporan ini membantu Anda mempelajari kapan peristiwa terjadi dan dapat membantu Anda dalam penelusuran kesalahan. Untuk melaporkan beberapa peristiwa atau peristiwa yang sering terjadi, pertimbangkan untuk mengganti MessageBox.Show dengan Console.WriteLine atau menambahkan pesan ke multibaris TextBox.
Untuk menjalankan kode contoh, tempelkan ke dalam proyek yang berisi instans jenis Form bernama Form1
. Kemudian pastikan bahwa penanganan aktivitas dikaitkan dengan peristiwa.FormClosing
private void Form1_FormClosing(Object sender, FormClosingEventArgs e) {
System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "CloseReason", e.CloseReason );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Cancel", e.Cancel );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "FormClosing Event" );
}
Private Sub Form1_FormClosing(sender as Object, e as FormClosingEventArgs) _
Handles Form1.FormClosing
Dim messageBoxVB as New System.Text.StringBuilder()
messageBoxVB.AppendFormat("{0} = {1}", "CloseReason", e.CloseReason)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Cancel", e.Cancel)
messageBoxVB.AppendLine()
MessageBox.Show(messageBoxVB.ToString(),"FormClosing Event")
End Sub
Keterangan
Peristiwa FormClosing terjadi saat formulir sedang ditutup. Ketika formulir ditutup, formulir dibuang, melepaskan semua sumber daya yang terkait dengan formulir. Jika Anda membatalkan acara ini, formulir tetap dibuka. Untuk membatalkan penutupan formulir, atur Cancel properti yang FormClosingEventArgs diteruskan ke penanganan aktivitas Anda ke true
.
Saat formulir ditampilkan sebagai kotak dialog modal, mengklik tombol Tutup (tombol dengan X di sudut kanan atas formulir) menyebabkan formulir disembunyikan dan DialogResult properti diatur ke DialogResult.Cancel
. Anda dapat mengganti nilai yang ditetapkan ke DialogResult properti saat pengguna mengklik tombol Tutup dengan mengatur DialogResult properti dalam penanganan aktivitas untuk FormClosing peristiwa formulir.
Catatan
Close Ketika metode dipanggil pada jendela yang Form ditampilkan sebagai tanpa mode, Anda tidak dapat memanggil Show metode untuk membuat formulir terlihat, karena sumber daya formulir telah dirilis. Untuk menyembunyikan formulir lalu membuatnya terlihat, gunakan Hide metode .
Jika formulir adalah formulir induk antarmuka multi-dokumen (MDI), FormClosing peristiwa semua formulir anak MDI dimunculkan sebelum acara formulir FormClosing induk MDI dimunculkan. Demikian juga, FormClosed peristiwa semua bentuk anak MDI dimunculkan sebelum FormClosed peristiwa formulir induk MDI dimunculkan. Membatalkan FormClosing peristiwa formulir anak MDI tidak mencegah FormClosing peristiwa formulir induk MDI dimunculkan. Namun, membatalkan acara akan diatur ke true
Cancel properti FormClosingEventArgs kelas yang diteruskan sebagai parameter ke formulir induk. Untuk memaksa semua formulir induk dan anak MDI ditutup, atur Cancel properti ke false
dalam formulir induk MDI.
Untuk informasi selengkapnya tentang menangani peristiwa, lihat Menangani dan Menaikkan Peristiwa.