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 มาถามยืนยันว่าจะปิดฟอร์มหรือไม่

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

17 ตุลาคม 2553

Visual Studio Tips

ทิปเล็ก ๆ กับ Keyboard Shortcut บน Visual Studio
- CTRL + K , C กำหนดคอมเมนต์ Insert Comment
- CTRL + K , U ยกเลิกกำหนดคอมเมนต์ Remove Comment
- CTRL + U ตัวอักษรเล็ก Lower Case
- CTRL + SHIFT + U ตัวอักษรใหญ่ Upper Case
- CTRL + SHIFT + W เลือกคำม Select Word
- F2 แสดง Object Browser มีประโยชน์ มาก ๆ เวลาหาสิ่งที่ต้องการ
- ALT + SHIFT + ENTER ขยายหน้าจอเขียนคำสั่ง Maximize Program Editor
- เมนู Tools | Options | Text Editor | Basic หรือ C# | Editor | Line numbers แสดง Line Number
- CTRL + M , L ย่อขยายบล๊อกคำสั่ง Fold/Unfold all regions
- CTRL + SHIFT + A Add New Item
- CTRL + SHIFT + B Build Project
- ? + TAB Insert Snippet
- CTRL + SPACE Show Snippet
- CTRL + J Show IntelliSense®

Download Poster ได้ที่
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=92ced922-d505-457a-8c9c-84036160639f
VB.Net 2010 sample
http://code.msdn.microsoft.com/vb2010samples/Release/ProjectReleases.aspx?ReleaseId=4174

ป้อนข้อมูลเฉพาะตัวเลข Type numeric only

If Char.IsNumber(e.KeyChar)=False Then
e.handled=True
End If


การลบแถวใน DataGridView

แบบที่ 1 - กรณีที่เลือกหลาย ๆ แถวแล้วลบ

For Each row As DataGridViewRow In DataGridView1.SelectedRows
DataGridView1.Rows.Remove(row)
Next

แบบที่ 2 - ลบแถวปัจจุบัน อยู่แถวไหนก็ลบแถวนั้น

DataGridView1.Rows.Remove(DataGridView1.CurrentRow)
"I Believe in You"

Copyright(c) 2007 - 2022 by Kasem Kamolchaipisit.