【发布时间】:2013-11-22 08:52:52
【问题描述】:
我的 Winforms 应用程序中有一个MaskedTextBox。我需要一个多行掩码,f.e:
"999999\r\n
999999\r\n
999999\r\n
00/00/0000"
我阅读了msdn documentation 并惊讶地发现没有“新行”或类似的东西。
我知道我可以编写自己的用户控件来解决这个问题,但是屏蔽文本框会是一个更简单的解决方案。 所以我有 2 个问题:有没有办法给面具添加一条新线? 如果没有,为什么控件支持多行 - 不是没用吗?
提前致谢
【问题讨论】:
-
来自 msdn 文档:获取或设置一个值,该值指示这是否是多行文本框控件。 MaskedTextBox 不完全支持此属性。我建议你制作一个代表 4 个蒙版文本框的用户控件,瞧,你已经设置好了 - msdn.microsoft.com/en-us/library/… -
-
“不完全支持”...好吧,好吧。我会说它不起作用,应该隐藏但没关系。谢谢你。
-
糟糕,这不是一个真正的解决方案:s
-
请记住,此控件的目的(在非常特定的条件下接受字符)似乎与多行的含义相反。例如:在您的代码中,您需要一个只允许数字和“/”的掩码;应该如何理解多行字符?总是接受每个面具?如果您想设计一个只接受换行符(或除换行符之外的任何内容)的掩码怎么办?或者换个角度看:你见过多少接受换行的密码输入框?看来您将不得不创建自己的控件。
标签: c# winforms maskedtextbox