C#textBox控件只允许输入正整数同时输入值必须大于0
您可以使用KeyPress事件来限制用户只能输入数字,并使用TextChanged事件来验证输入的值是否大于0。
首先,在窗体的Load事件中添加以下代码来订阅事件处理程序:
textBox.KeyPress += textBox_KeyPress;
textBox.TextChanged += textBox_TextChanged;
然后,实现事件处理程序:
private void textBox_KeyPress(object sender, KeyPressEventArgs e)
{
// 只允许输入数字和控制键
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
{
e.Handled = true;
}
}
private void textBox_TextChanged(object sender, EventArgs e)
{
if (int.TryParse(textBox.Text, out int value))
{
// 输入的值是一个整数
if (value <= 0)
{
// 输入的值小于等于0,清空文本框
textBox.Text = "";
}
}
else
{
// 输入的值不是一个整数,清空文本框
textBox.Text = "";
}
}
这样,当用户尝试输入非数字字符时,KeyPress事件处理程序将阻止输入,而当用户输入一个值后,TextChanged事件处理程序将验证输入的值是否大于0,并在不满足条件时清空文本框
原文地址: http://www.cveoy.top/t/topic/h9EL 著作权归作者所有。请勿转载和采集!