C# TextBox中只能輸入數(shù)字的方法有哪些

小億
479
2024-01-19 10:30:14

C#中只允許輸入數(shù)字的方法有以下幾種:

  1. 使用KeyPress事件:可以使用KeyPress事件來(lái)過(guò)濾輸入,只允許數(shù)字輸入。在KeyPress事件中,可以通過(guò)判斷輸入的字符是否是數(shù)字來(lái)決定是否接受輸入。
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
    if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
    {
        e.Handled = true;
    }
}
  1. 使用TextChanged事件:可以使用TextChanged事件在每次文本框內(nèi)容發(fā)生變化時(shí)檢查輸入是否為數(shù)字,并在必要時(shí)進(jìn)行處理。
private void textBox1_TextChanged(object sender, EventArgs e)
{
    if (!int.TryParse(textBox1.Text, out int result))
    {
        textBox1.Text = "";
    }
}
  1. 使用正則表達(dá)式:可以使用正則表達(dá)式來(lái)驗(yàn)證輸入是否為數(shù)字,并在必要時(shí)進(jìn)行處理。
private void textBox1_TextChanged(object sender, EventArgs e)
{
    if (!Regex.IsMatch(textBox1.Text, @"^\d+$"))
    {
        textBox1.Text = "";
    }
}

以上方法可以根據(jù)具體需要選擇其中一種或多種來(lái)實(shí)現(xiàn)只允許數(shù)字輸入的功能。

0