自动在文本框中设置最小值和最大值

pro*_*135 5 .net c# textbox winforms

当用户将值放在最大值上方时,我想使文本框自动设置最大值。例如,最小值为0,最大值为255。当用户在文本框中输入999时,最大值将自动设置为255。当用户在文本框中输入-11时,其最小值将自动设置为0。您可以在下面看到gif动​​画的工作方式

http://i.stack.imgur.com/93Tqg.gif

我试过if else声明,但无法将字符串转换为int

Ham*_*jam 4

您应该在您想要此功能的每个文本框上设置此项。

它只是检查Text文本框是否为数字,然后检查范围并应用适当的值

yourtextbox.TextChanged+= (s, e) =>
{
    var textbox = s as TextBox;
    int value;
    if (int.TryParse(textbox.Text, out value))
    {
        if (value > 255)
            textbox.Text = "255";
        else if (value < 0)
            textbox.Text = "0";
    }
}
Run Code Online (Sandbox Code Playgroud)

  • @dotctor 如果最小值是 5 而你输入 15 会怎么样?您将无法执行此操作,因为当您输入 1 时,验证将失败,并且您将无法输入 5。 (2认同)