我想知道文本框是否有一种合适的方式只接受数字。
比如,我希望它能够“阻止”用户输入“abcd1234”,并只允许他输入“1234”。
我尝试了以下代码,对我来说运行良好。 文本框
将允许用户只输入数字。
private void txtbox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
{
e.Handled = true;
}
}
你也可以尝试这样做
e.Handled = !(char.IsDigit(e.KeyChar));
你可以使用以下代码来评估输入:
if (txtNumericBox.Text.All(char.IsDigit))
// Proceed
else
// Show error
private string _MyNemericStringr;
public string MyNemericString
{
get { return _MyNemericStringr; }
set {
if (value.All(char.IsDigit))
_MyNemericStringr = value;
else
_MyNemericStringr = "0";
}
}
"0"
。否则,它将像往常一样进行处理。您可以尝试这个简单的代码。
private void keypressbarcode(object sender, KeyPressEventArgs e)
{
e.Handled = !(char.IsDigit(e.KeyChar) || e.KeyChar == (char)Keys.Back);
}
它只接受数字和退格键
int
类型。第三,你可以将输入设置为type=number
(这适用于Web,不确定对于WPF、UWP和其他技术是否有效),这样只允许输入数字。 - Spluf