c# - 如何在c#中将texbox格式化为NIC格式
问题描述
我正在用 c# 做一个项目。我包括了人员的详细信息。详细信息包含名称、f/name 和 NIC 编号。NIC 号码是一个国家的国民身份证,其格式为 21201-1234567-7。
现在我怎么能做到这一点?在 textboxtextchangeevent 下,我想执行此任务。我尝试了以下代码,但它给了我错误:
指定的参数超出了有效值的范围。参数名称:startIndex
private void textBox2_TextChanged(object sender, EventArgs e)
{
try
{
string text = textBox2.Text;
string deshsign = "-";
string c = text.Insert(5, deshsign);
textBox2.Text = c;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
解决方案
对于未来的读者,解决方案是在 winform、wpf 或 asp.net 页面/表单中添加一个 MaskedTextBox 控件。
使用 NIC 掩码设置 MaskedTextBox Mask属性:
maskedTextBox1.Mask = "00000-0000000-0";
推荐阅读
- javascript - Nativescript Vue - 函数阻塞 DOM
- javascript - React-Hooks:禁用后无法启用输入
- c# - c#如何正确编译代码以进行分发?
- c - 使用空格来表示字符串结束的错误
- google-cloud-platform - 如何使语音文本理解字符和数字,而不是单词
- yum - dnf 看不到本地托管存储库中的包
- docker - 在 docker 镜像中运行 Jupyter 并连接到外部 YARN 集群
- node.js - NPX-CRA:创建反应应用程序,使用 npx 引发错误
- mysql - MySQL select 上个月完成
- mysql - 如何在链接表中获取我的 sql 查询的确切结果