- 数字以外の入力を無効化する方法: テキストボックスのKeyPressイベントを使用して、入力されたキーが数字以外の場合に入力をキャンセルします。
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
{
e.Handled = true;
}
}
- 正規表現を使用して数字以外の入力を無効化する方法: テキストボックスのTextChangedイベントを使用して、入力されたテキストが数字以外の場合に削除します。
private void textBox1_TextChanged(object sender, EventArgs e)
{
string input = textBox1.Text;
string pattern = "[^0-9]";
string replacement = "";
Regex rgx = new Regex(pattern);
string result = rgx.Replace(input, replacement);
if (result != input)
{
textBox1.Text = result;
textBox1.Select(result.Length, 0);
}
}
- NumericUpDownコントロールを使用する方法: NumericUpDownコントロールは、ユーザーが数字のみを入力できるようにするための専用のコントロールです。テキストボックスと組み合わせて使用します。
これらの方法を使用することで、Windowsフォームのテキストボックスで数字のみを入力する制限を実装できます。お好みや要件に応じて、適切な方法を選択してください。