1

每当用户尝试输入不在该范围内的数字时,[0, 24]它应该显示一条错误消息。我接受浮点数的代码如下。如何修改它以添加范围验证?

private void h(object sender, Windows.UI.Xaml.Controls.TextChangedEventArgs e)
{        
   try
   {
      float time = float.Parse(hours.Text);
   }
   catch
   { 
      label2.Text = "enter proper value ";
      hours.Text = " ";
   } 
}
4

2 回答 2

2

我知道 SO 不鼓励仅发布链接作为答案,但如果该链接是对该问题的直接且完整的答案。

验证类

于 2013-05-05T13:57:40.790 回答
0

我建议使用float.TryParse, 而不是构建 try-catch 块以防解析失败。 TryParse将在out变量中返回解析的值,如果解析成功,则返回 true,否则返回 false。将其与检查数字是否在 0 到 24 之间结合起来,您会得到如下所示的内容:

float parsedValue;

// If the parse fails, or the parsed value is less than 0 or greater than 24,
// show an error message
if (!float.TryParse(hours.Text, out parsedValue) || parsedValue < 0 || parsedValue > 24)
{
    label2.Text = "Enter a value from 0 to 24";
    hours.Text = " ";
}
于 2013-05-05T11:02:58.450 回答