2

100 を超える値を入力できないを作成したいTextBox。数値のみが許可され、数値TextBoxはオプションではありません。これは今のところ私のコードです:

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

何か案は?

4

4 に答える 4

4

を使用int.TryParseして解析が成功したかどうかを確認し、値を比較して 100 未満かどうかを確認する必要があります。

int number;
if(int.TryParse(textBox1.Text, out number))
{
  if(number <= 100) 
    {
     //in range
    }
  else
    {
     // not in range
    }
}
else
{
//invalid number
}

タイプに応じてdouble.TryParseまたは 他のメソッドを使用することもできます。これらのメソッドは、解析が失敗した場合に例外を発生させる代わりに を返すため、安全に使用できます。TryParsefalse

于 2013-05-27T18:00:09.627 に答える