ウインドウズフォームのテキストボックスに数値を入力の方法
以下の2つの方法のいずれかを使用して、WinForm テキストボックスに数字が入力できない問題を解決できます。
- マスクされたテキストボックスコントロールの使用
- テキストボックスコントロールをMaskedTextBoxコントロールに置き換えます。
- マスク属性を「0」にすると数字以外が入力できなくなります。
- HidePromptOnLeaveプロパティをTrueに設定すると、マスクプロンプトは非表示になります。
- 例えば、
- maskedTextBox1.Mask = “0”;
maskedTextBox1.HidePromptOnLeave = true; - KeyPressイベントを使用する:
- テキストボックスのKeyPressイベントに、入力された文字が数字かどうかをチェックするコードを追加します。
- 数字以外の文字が入力された場合、Handledプロパティをtrueにして文字入力を阻止します。
- 例えば:
- private void textBox1_KeyPress(object sender, KeyPressEventArgs e) => e.Handled = !char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar);
どちらの方法も数字しか入力できないテキストボックスを実現することができます。状況に応じていずれかの方法を選択して解決できます。