【问题标题】:Using masked text box to validate input使用屏蔽文本框验证输入
【发布时间】:2010-11-17 11:51:36
【问题描述】:

您好,我正在使用以下掩码字符串来确保用户输入有效的电话号码

(99)-00000000

这应该适用于澳大利亚的移动电话和区域固定电话号码

但是我遇到了一个问题,用户可以在不输入所有数字的情况下逃脱

我了解 9 表示 0 到 9 之间的可选数字,0 表示 0 到 9 之间的必填数字

那么,如果我不输入所有最后八位强制性数字,程序仍然会显示类似的结果

(03)-6474

(03)- 63799

(02)-1 38 390

【问题讨论】:

    标签: c# .net winforms validation maskedtextbox


    【解决方案1】:

    因为它只是在您键入时从左到右填充空白。即使前两位数字是可选的,它也会像您输入的前两个数字一样填写它们你输入。

    如果您不喜欢这种行为,您可以轻松地继承 MaskedTextBox 控件并自定义它处理键盘输入的方式。下面是几个示例控件,它们会按预期将数字从右向左推入:

    (我认为第二个示例更准确地解释了对基本控件进行了哪些更改,而且它允许您在不下载示例项目的情况下查看大部分相关代码。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多