【发布时间】:2015-09-24 09:20:53
【问题描述】:
我是 C# 新手,我想知道如何制作一个只接受数字的文本框。 因此,如果您输入十进制数字,那将没有问题,但是当您输入其他内容时,“0,1,2,3,4,5,6,7,8,9 或”我希望将其删除文本框。 我认为 KeyDown 或 TextChanged 是可能的。
这是我已经尝试过的:
private void txt2011_KeyDown(object sender, System.Windows.Input.KeyEventArgs e)
{
if (!System.Text.RegularExpressions.Regex.IsMatch("^[0-9]", txt2011.Text))
{
txt2011.Text = "0";
}
}
提前致谢
【问题讨论】:
-
-1(注意-)或1e+2(指数符号中的100)或1,2,3(注意两个逗号)怎么样?跨度> -
我发现在输入时进行验证 经常让用户感到厌烦,而且很难做到正确。也许您可以改用
Leave事件来验证该字段? (也许更改背景颜色或显示消息以表明它无效?)