2012-01-27 26 views
1

我是WinForms的新手。为什么屏蔽文本框不工作00-00-1900?

当我试图实现蒙面文本框,我得到了一个错误。

我想要一个掩码00-00-1900其中00处理任何数字,但19是固定的,不能被用户覆盖。我怎么做?

有效输入的例子是19-12-198812-01-1958

+0

C#? VB .Net? – 2012-01-27 11:03:45

+0

我正在使用C#,.但你也可以告诉VB。我明白。 – RAGAVAN 2012-01-27 11:07:11

+0

什么样的错误????? – Reniuz 2012-01-27 11:17:23

回答

1

00-00-1900在面膜以- -1 ___因为0和9是掩码文本这是指,数值。

0 - 数字,必需。此元素将接受 0和9之间的任何单个数字。

9 - 数字或空格,可选。

你只要点击被蒙面的文本框,然后转到属性。点击并更改掩码到00-00-1 \ 900。

你会得到你想要的。

1900 to 1999 in 1900. 
+0

感谢Eswaran。你只理解我的问题。 – RAGAVAN 2012-01-27 11:37:06

1

0 Digit,required。此元素将接受0到9之间的任何单个数字。

9数字或空格,可选。

\ Escape。逃离掩码字符,将其变成文字。 “\”是反斜杠的转义序列。

http://msdn.microsoft.com/en-us/library/system.windows.forms.maskedtextbox.mask.aspx

由于9是一个特殊字符,但你希望把它当作文字,你需要\逃脱它。

所以我想你的面具需要是00-00-1\900,我会写在C#代码中作为@"00-00-1\900"

0

看看this,看备注部分。可悲的是,它没有说明你是否能够修正最后四位数的19位 - 你可能需要编写自己的检查来执行此操作。

+0

它清楚地说明了转义字符在您链接的评论部分中的含义。 – CodesInChaos 2012-01-27 11:27:31

+0

我错过了MSDN页面上表格的最后一行以及您的评论CodeInChaos。\是前进的道路:) – 2012-01-27 11:28:49