2

こんにちは簡単な質問で申し訳ありませんが、誰かがコードを教えてくれれば幸いです。私のWinformには50個のテキストボックスがあります。すべてが数値のみを許可し、それも 1 ~ 100 の間のみを許可する必要があります。この検証を確実に行うにはどうすればよいですか?

私の考えは、ASCII値を使用してkeypressイベントでe.Keycharを使用して、ユーザーが数値のみを入力するように制限することでした。また、おそらく、プロパティの Set でこの検証を確実に行うことができますか? しかし、私が正しいかどうかはわかりませんし、正しいコードもわかりません。私を助けてください。

4

1 に答える 1

5

検証済みNumericUpDownの通常のボックスの代わりに使用します。TextBox

NumericUpDown コントロールには、コントロールの上下ボタンをクリックして増減できる単一の数値が含まれています。ReadOnly プロパティが true に設定されていない限り、ユーザーは値を入力することもできます。

最小数と最大数を指定できます。これにより、ユーザーは 1 から 100 までの数値を入力でき、上下ボタンも使用できるようになります。

編集:コードを使用して実行したい場合は、次のようなKeyPressイベントを試すことができますTextBox:

private void yourTextBox_KeyPress(object sender, KeyPressEventArgs e)
{
    if (!char.IsControl(e.KeyChar)
        && !char.IsDigit(e.KeyChar))
    {
        e.Handled = true;
    }
}

上記は.10 進数にアクセスするように改善できますが、おわかりいただけたと思います。

于 2013-11-08T14:24:50.910 に答える