テキストボックスが数値であることを確認するさらに良い方法は、KeyPress イベントを処理することです。次に、許可する文字を選択できます。次の例では、数字以外のすべての文字を許可しません。
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
// If the character is not a digit, don't let it show up in the textbox.
if (!char.IsDigit(e.KeyChar))
e.Handled = true;
}
これにより、数字のみを入力できるため、テキストボックスのテキストが数字になります。
これは、10 進数値 (および明らかにバックスペース キー) を許可するために思いついたものです。
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (char.IsDigit(e.KeyChar))
{
return;
}
if (e.KeyChar == (char)Keys.Back)
{
return;
}
if (e.KeyChar == '.' && !textBox1.Text.Contains('.'))
{
return;
}
e.Handled = true;
}