Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 验证windows窗体应用程序中的文本框_C#_Validation_Textbox_Spaces - Fatal编程技术网

C# 验证windows窗体应用程序中的文本框

C# 验证windows窗体应用程序中的文本框,c#,validation,textbox,spaces,C#,Validation,Textbox,Spaces,如何使用C#.net在windows窗体应用程序中验证文本框而不允许使用空格 在我的项目中。我可以验证文本框,而不允许空格。。。。 在这两件事上。。。。。。。。。。。。。 1.只允许使用空格 2.输入一个或两个字符后,文本框接受空格……。您可以通过处理按键事件来限制用户在文本框中输入空格 void textBox1_KeyPress(object sender, KeyPressEventArgs e) { e.Handled = (e.KeyChar == (char)Keys.Spa

如何使用C#.net在windows窗体应用程序中验证文本框而不允许使用空格 在我的项目中。我可以验证文本框,而不允许空格。。。。 在这两件事上。。。。。。。。。。。。。 1.只允许使用空格
2.输入一个或两个字符后,文本框接受空格……。

您可以通过处理
按键
事件来限制用户在
文本框
中输入空格

void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
    e.Handled = (e.KeyChar == (char)Keys.Space);
}
编辑

如果输入一两个字符后允许使用空格,则应使用


textbox1.Text.TrimStart()

void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
    e.Handled = (e.KeyChar == (char)Keys.Space);
}
编辑

如果输入一两个字符后允许使用空格,则应使用


textbox1.Text.TrimStart()。Winforms具有当您离开控件时触发的
验证
验证
事件。你可以点击这些,然后验证你的文本框。但是,如果要在键入时进行验证,则需要使用
键\u Press
事件在每次按键时进行检查,以确保框中的信息仍然有效

下面是一篇关于验证的SO文章:


根据你想做什么,答案中给出了一些不同的想法。无论您做出什么决定,请确保正确检查字段。例如,如果使用
键_按
,在允许空格之前,不要只计算字段中的字符数。如果您这样做了,用户可能已经将光标移动到开头并按空格键。那会弄乱你的系统。确认时确保检查整个字段,即使您使用的是
键\u Press
事件。将正则表达式与您想要的复杂模式一起使用。

这取决于“验证”的含义。Winforms具有当您离开控件时触发的
验证
验证
事件。你可以点击这些,然后验证你的文本框。但是,如果要在键入时进行验证,则需要使用
键\u Press
事件在每次按键时进行检查,以确保框中的信息仍然有效

下面是一篇关于验证的SO文章:


根据你想做什么,答案中给出了一些不同的想法。无论您做出什么决定,请确保正确检查字段。例如,如果使用
键_按
,在允许空格之前,不要只计算字段中的字符数。如果您这样做了,用户可能已经将光标移动到开头并按空格键。那会弄乱你的系统。确认时确保检查整个字段,即使您使用的是
键\u Press
事件。将正则表达式与您想要的复杂模式一起使用。

如果您不想在文本框中输入除字母数字字符以外的任何其他字符,则可以在文本框的按键事件中执行此操作

在按键事件中,您需要检查输入的字符是字母还是数字

Char.isleterordigit(e.KeyChar)

如果是,则通过设置允许按键

“e.Handled=false”

否则,不允许通过设置“e.Handled=true”按键


如果您不想在文本框中输入除字母数字字符以外的任何其他字符,则可以在文本框的按键事件中执行此操作

在按键事件中,您需要检查输入的字符是字母还是数字

Char.isleterordigit(e.KeyChar)

如果是,则通过设置允许按键

“e.Handled=false”

否则,不允许通过设置“e.Handled=true”按键


参考您必须修改正则表达式以满足您的要求。您的意思是用户不能从
空格开始,但可以使用后者吗?您好,很抱歉,我无法首先看到您的问题,我认为在stackoverflow中回答两次不是一个好方法。所以我想建议你参考下面的链接,我在参考前几分钟回答了这个链接。您必须修改正则表达式以满足您的要求。您的意思是用户不能从
空格开始,但可以使用后者吗?您好,很抱歉,我无法首先看到您的问题,我认为在stackoverflow中回答两次不是一个好方法。因此,我想建议您参考下面的链接,我在几分钟前回答了这个链接,我认为不允许在文本开头使用空格,但可以在以后输入。如果问题只是因为我们在开始时不允许使用空格,那么使用TrimStart()就行了。然而,OP表示,他们希望在允许空格之前有一个或两个字符。如果是一个角色,你很好。但是,如果是两个字符,这个方法就不起作用了。@BiggsTRC这会有什么不同,
TrimStart
在一个或两个字符之后从开始删除空格。OP说可能需要两个字符才能允许空格。在这种情况下,“B oy”将无效
TrimStart
不会解决这个问题。@BiggsTRC他说了一两个字符。我认为只有OP才能澄清我认为空格不允许出现在文本的开头,但可以在以后输入。如果问题只是我们在开始时不允许使用空格,则执行TrimStart()将起作用。然而,OP表示,他们希望在允许空格之前有一个或两个字符。如果是一个角色,你很好。但是,如果是两个字符,此方法将不起作用。@BiggsTRC这会有什么不同,
TrimStart
在一个或两个字符不起作用后从开始处删除空格