如何验证文本框,而不允许Windows窗体应用程序中使用C#.net 在我的项目中.i我可以验证文本框,不允许空格.... 在这两件事情。 ............ 1.仅限空格不允许 2.输入一个或两个字符后文本框接受空格...........在Windows窗体应用程序验证文本框
回答
您可以限制用户通过处理KeyPress
事件进入TextBox
中的空间
void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
e.Handled = (e.KeyChar == (char)Keys.Space);
}
编辑
在箱体空间正在进入一个或两个字符之后允许的,那么你应该使用
textbox1.Text.TrimStart()
我认为空格不允许只在文本的开头,但可以稍后输入。 – 2011-05-13 04:51:54
如果问题只是我们在开始时不允许空格,那么执行TrimStart()将会起作用。然而,OP表示他们希望在留出空间之前拥有一个或两个字符。如果它是一个字符,你很好。但是,如果是两个,这种方法将不起作用。 – IAmTimCorey 2011-05-13 04:59:42
@BiggsTRC这将如何改变,'TrimStart'从一开始就删除了一个或两个字符之后的空格/空格不会成为问题。 – V4Vendetta 2011-05-13 05:03:08
这取决于你所说的“验证”是什么。 Winforms具有在您离开控件时触发的Validating
和Validate
事件。你可以点击这些,然后验证你的文本框。但是,如果您想在输入时进行验证,则您希望使用Key_Press
事件来检查每次按下某个键以确保该框中的信息仍然有效。
这里是一个验证SO文章:
在有这些问题的答案提供一些不同的想法取决于你想要做什么。无论你决定什么,一定要确保你正确地检查领域。例如,如果您使用Key_Press
,请不要在允许空格之前统计字段中有多少个字符。如果你这样做了,用户可以将光标移动到开始处和按下的空间。这会搞乱你的系统。即使您正在使用Key_Press
事件,请务必在验证时检查整个字段。您可以像使用RegEx一样复杂的模式来执行此操作。
如果您不希望允许除TextBox中的字母数字字符之外的任何其他字符条目,则可以在TextBox的KeyPress事件中执行此操作。
在KeyPress事件中,您需要检查输入的字符是字母还是数字。
Char.IsLetterOrDigit(e.KeyChar)
如果是,则允许按键设置
“e.Handled =假”
,否则不允许在按键通过设置 “e.Handled = TRUE”
private void txtCardID_KeyPress(object sender, KeyPressEventArgs e)
{
if (Char.IsLetterOrDigit(e.KeyChar) // Allowing only any letter OR Digit
|| e.KeyChar == '\b') // Allowing BackSpace character
{
e.Handled = false;
}
else
{
e.Handled = true;
}
}
- 1. 在windows窗体应用程序验证文本框
- 2. Windows窗体文本框验证
- 3. Windows窗体中的文本框验证
- 4. Silverlight(如)在Windows窗体应用程序验证
- 5. Dotnet:如何在窗体窗体应用程序中实现Windows身份验证?
- 6. C#Windows窗体应用程序逐行读取文本框
- 7. 从Windows窗体应用程序的ASP.NET身份验证
- 8. 在Windows窗体验证
- 9. 如何验证Windows窗体中电话号码的文本框?
- 10. Windows窗体应用程序
- 11. Xamarin窗体 - Windows验证webapi
- 12. 如何在Windows窗体应用程序中实现控件验证?
- 13. 富文本窗体应用程序
- 14. Windows窗体应用程序,输出文本?
- 15. Windows窗体应用程序:网格视图帮助文本
- 16. C#文本框短日期格式异常错误,Windows窗体应用程序
- 17. 如何在Windows应用程序中将数据从一种窗体传递给另一种窗体文本框?
- 18. 从Windows应用程序使用窗体身份验证ASP.NET Web服务
- 19. 在Windows窗体应用程序中分组组合框项目
- 20. 如何从组合框在C#Windows窗体应用程序
- 21. 在Windows窗体应用程序中过滤列表框
- 22. Windows窗体应用程序使用HTML
- 23. c#窗体窗体应用程序中的焦点或选择文本框
- 24. Windows窗体应用程序异常
- 25. 不兼容Windows窗体应用程序
- 26. Mergesort C++ Windows窗体应用程序
- 27. C#Windows窗体应用程序关闭
- 28. Windows窗体应用程序中的WCF
- 29. Windows多窗体应用程序设计
- 30. 美化Windows窗体应用程序
参考http://stackoverflow.com/questions/2703461/regular-expression-alphanumerics-with-space http://stackoverflow.com/questions/924287/regular -expressio n-for-alphnumeric-and-space。你必须修改正则表达式来满足你的要求。 – 2011-05-13 04:49:41
你的意思是说用户不能从'space'开始,但可以使用后者吗? – V4Vendetta 2011-05-13 04:54:19
嗨,对不起,我没有看到你的问题,我认为它不是一个好的方法来回答两次在stackoverflow。所以我想建议你在http:// stackoverflow之前几分钟回答下面的链接。com/questions/5987924/validating-textbox-in-windows-form-applications/5988074#5988074 – SharpUrBrain 2011-05-13 06:53:35