MaskedTextBox的多线掩码

时间:2013-11-22 08:52:52

标签: c# winforms maskedtextbox

我的Winforms应用程序中有一个MaskedTextBox。我需要一个多线模板,f.e:

"999999\r\n
 999999\r\n
 999999\r\n
 00/00/0000"

我读了msdn documentation并且惊讶地发现没有“新行”或类似的东西。

我知道我可以编写自己的用户控件来解决此问题,但屏蔽文本框将是一个更简单的解决方案。 所以我有两个问题:有没有办法在面具上添加新线? 如果没有,为什么Control支持多行 - 不是没用的?

提前致谢

1 个答案:

答案 0 :(得分:2)

为此,我将创建一个自定义控件,它将为每行组合MaskedTextBox集 现在,根据需要,“哑”控制与持续数量的MaskedTextBox一个在另一个下面和格式字符串的相应属性

public string Format1 {get;set;} 
public string Format2 {get;set;} 
public string FormatX {get;set;} 

或创建一个“智能”版本,其属性为“LinesCount”等,当你设置为5时,它会向左右添加5个MaskedTextBox并设置锚点(整个控件可以伸缩)

然后属性

public List<string> Formats {get;set;}

每一行都对应于每个MaskedTextBox

还有属性值

public List<X> Values 

每一行都对应于每个MaskedTextBox.Value,其中X是类型我不记得它返回。

更复杂,更智能,更有用的控制,你需要更多的编码,但是可行的