c# - 自动设置文本框的最小值和最大值

标签 c# .net winforms textbox

我想让文本框在用户将值置于最大值之上时自动设置最大值。示例最小值为 0,最大值为 255。当用户在文本框中输入 999 时,它会自动设置为 255 作为最大值。当用户将 -11 放在文本框上时,它会自动设置为 0 作为最小值。你可以在下面看到它应该如何工作的 gif 动画

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

我试过 if else 语句,但它无法将字符串转换为 int

最佳答案

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

它只是检查文本框的 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";
    }
}

关于c# - 自动设置文本框的最小值和最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26828297/

相关文章:

c# - In-Clause 在 LINQ 查询中多久计算一次?

c# - 在 C# 中有效地搜索关键字的目录

c# - 提供者与 Oracle 客户端版本不兼容

c# - .NET Framework 内置接口(interface),构建自定义数据结构时的建议?

c# - 我应该为每个 Paint 请求创建新的 Pens/Brush 还是在整个应用程序生命周期中保留它们?

c# - 如何解决这个 Javascript/Razor 问题?

.net - 为什么 .NET winform 在大 DPI 设置下无法正确缩放?

c# - 在 C# 中,将类标记为静态的目的是什么?

使用 Windows 窗体进行 C# 单元测试

c# - 首次启动应用程序时显示对话框