僅允許文字中的數字

textBox.KeyPress += (sender, e) => e.Handled = !char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar);

這隻允許在 TextBox 中使用數字和控制字元,其他組合可以使用相同的方法將 Handle 屬性設定為 true 來阻止文字。

使用者仍然可以複製/貼上不需要的字元,因此應該在 TextChanged 上進行額外檢查以清除輸入:

textBox.TextChanged += (sender, e) => textBox.Text = Regex.Match(textBox.Text, @"\d+").Value

在此示例中,使用正規表示式來過濾文字。

**** 如果可能, NumericUpDown 應該是數字的首選。