textbox控制元件只輸入數字
1,把住Form的keypreview設定成true,即接受按鍵事件;
2,在textbox1的按鍵處理函式中寫入,
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if(!char.IsDigit(e.KeyChar)) //判斷按鍵輸入字元是不是數字
{
e.Handled = true; //表示按鍵輸入已經被處理,這樣按鍵將不會給應用程式,丟掉不想要的按鍵值,這樣的缺點是backspace也會被返回
}
}
類似的函式有
char.IsControl(); //是否是控制字元
char.IsLetter(); //是否是字母
char.IsLetterOrDigit(); //是否是字母和十進位制數字
char.IsLower(); //是否是小寫
char.IsNumber(); //是否是數字
修改成下面的函式,textbox就可以接受back按鍵刪掉輸入的資料
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if(!char.IsDigit(e.KeyChar))
{
if (e.KeyChar != (char)Keys.Back)
{
e.Handled = true;
}
}
}