[C#] Textbox ให้ป้อนได้เฉพาะตัวเลข

Textbox ป้อนได้เฉพาะตัวเลข

ออกแบบดังนี้


ใส่โค้ด

namespace textboxInputOnlyNumber
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            if((e.KeyChar < 48 || e.KeyChar > 57) && (e.KeyChar != 8))
            {
                e.Handled = true;
            }
        }
    }
}


KeyDown คือตอนกดปุ่ม (ทันทีที่ปุ่มถูกกด)

KeyUp คือตอนปล่อยปุ่มที่กด (ปุ่มจะถูกปล่อยขึ้น)

KeyPress คือไม่สน กดคือทำงาน ใช้เฉพาะพวกคีย์อักษร (ปุ่มลูกศรก็ใช้ไม่ได้) ถ้าต้องการใช้รับค่าคีย์อื่นๆ ที่ไม่ใช่ตัวอักษรก็ให้ใช้ KeyDown และ KeyUp 

48-59 เป็น Unicode character 

หรืออีกวิธี
if (!Char.IsDigit(e.KeyChar))
{
    e.Handled = true;
    return;
}
Previous
Next Post »