5

除了最后 N 个字符,如何在 TextBox 中启用密码字符?

我已经尝试过这种方法

cardnumber.Select((c, i) => i < cardnumber.Length - 4 ? 'X' : c).ToArray()

但这太难操作了,我会在每个事件中传递原始卡值KeypressTextChange等等。

有没有更简单和易于管理的方法?

4

1 回答 1

4

这应该可以解决问题,

string pw = "password1234";
char[] splitpw;
string cenpw;
int NtoShow;

splitpw = new char[pw.Length];
splitpw = pw.ToCharArray();
NtoShow = 4;
for (int i = 0; i < pw.Length; i++)
{
    if (i < pw.Length - NtoShow)
        cenpw += "*";
    else
        cenpw += splitpw[i];
}

//cenpw: "********1234"    
于 2013-04-17T08:28:23.477 回答