我希望能使文本框在用户输入超过最大值时自动设置为最大值。例如,最小值为0,最大值为255。当用户在文本框中输入999时,它会自动设置为最大值255。当用户在文本框中输入-11时,它会自动设置为最小值0。您可以查看下面的gif动画以了解其工作原理。
我尝试过使用if else语句,但无法将字符串转换为int类型。
我尝试过使用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";
}
}
if (int.Parse(textBox.Text) > MAX_VALUE) {
textBox.Text = MAX_VALUE;
}
NumericUpDown
,它是专门为此目的而制作的。 - jmcilhinney