2012-02-25 76 views
0

我有一个窗体上的文本框,需要一个信用卡号码,它以纯文本显示数字。我需要在前12个字符中显示“x”,并且在向其中输入信息时只应以纯文本显示最后4位数字。另外,如果我们屏蔽该值,是否可以从文本框的文本属性中获取实际信息?如何在输入信息时在文本框中遮盖某些字符?

感谢您的帮助!

回答

2

我只是将文本框分成两部分,一部分使用MaskedTextBox屏蔽,另一部分使用最后4位数字。在这种情况下,您可以免费获得您的功能,无需重新发明轮子。使用“0000-0000-0000”的Mask属性和“X”的passwordChar。

一旦用户输入了前12位数字,您可以自动设置第二个文本框的焦点来设置其余数字。

+0

我假设你不是一个UI设计师,因为从可用性的角度来看这是一个可怕的解决方案。 – adelphus 2012-02-25 22:30:07

+0

怎么样?大多数输入信用卡信息的表单使用单独的文本框 – BrokenGlass 2012-02-25 22:37:58

+0

用户不明白为什么一个元素(卡号)在两个盒子之间溢出不均匀。您通过简化开发人员来解决问题,但UI应始终关注用户的视角。 – adelphus 2012-02-25 22:46:20

2

在文本框的OnTextChanged事件中,您应该保留一个输入字符数的选项卡,只要该计数是< = 12,您应该用“x”替换输入的字符。

+0

并在更换之前存储输入的字符。否则.Text属性将返回x的! – adelphus 2012-02-25 22:32:56

相关问题