启用文本框中除最后N个字符外的密码字符/限制掩码

本文关键字:字符 密码 掩码 文本 最后 启用 | 更新日期: 2023-09-27 18:09:30

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

我已经试过这个方法了

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

但是很难操作,我会在每个事件中传递原始卡值,比如KeypressTextChange

有没有更简单、更容易管理的方法?

启用文本框中除最后N个字符外的密码字符/限制掩码

应该可以了,

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"