31 ตุลาคม 2553

VB.Net QueryUnload หายไปไหน

คุณคงเคยใช้ปุ่ม X ที่อยู่มุมขวาของฟอร์มเพื่อทำการปิดฟอร์มใช่หรือเปล่า
แต่โปรแกรมเมอร์น้อยคนนักที่เขียนโปรแกรมเพื่อคุมการปิดฟอร์มจากปุ่มนี้
ในอดีต หากใช้ Visual Basic 6 , Microsoft Access , Visual FoxPro
ก็จะมีอีเวนต์ชื่อ QueryUnload เพื่อใช้ในการเขียนคำสั่งเพื่อควบคุมการปิดฟอร์มจากการกดปุ่ม X (close)





















ใน VB.Net อีเวนต์ชื่อ QueryUnload หายไป มันหายไปไหน แล้วทำไม่ถึงหายไป ?????
ไม่ ๆ มันไม่ได้หายไปไหน ใน VB.Net รวมถึงตระกูล .NET ได้เปลี่ยนไปใช้อีเวนต์ชื่อ FormClosing



ดังนั้นเราก็สามารถเขียนควบคุมการปิดฟอร์มด้วยปุ่ม X (close) ได้แล้ว ดังตัวอย่าง

Private Sub frmMember_FormClosing(ByVal sender As Object, _
ByVal e As System.Windows.Forms.FormClosingEventArgs) _
Handles Me.FormClosing
If MessageBox.Show("ต้องการยกเลิกหน้าจอหรือไม่", "ยืนยัน", _
MessageBoxButtons.YesNo, MessageBoxIcon.Question, _
MessageBoxDefaultButton.Button2) = Windows.Forms.DialogResult.No Then
e.Cancel = True
End If

End Sub

จากตัวอย่างข้างต้น เวลามีใครมากดปุ่ม X (close) ก็จะมี Messagebox มาถามยืนยันว่าจะปิดฟอร์มหรือไม่

สำหรับบทเรียนนี้ก็จบเพียงเท่านี้ สวัสดีราตรีสวัสดิ์

ไม่มีความคิดเห็น:

"I Believe in You"

Copyright(c) 2007 - 2022 by Kasem Kamolchaipisit.