我有一个只接受数字的字段,但我想要另一个字段(传真)的相同功能,其中示例值看起来像(070)412 34 56。
如何修改我当前的功能,所以它也接受“(”和“)”?
这是当前代码,我必须检查数字
char ch = e.KeyChar;
if (!Char.IsDigit(ch) && ch != 8 && ch != 46)
{
e.Handled = true;
}
e.Handled = !char.IsDigit(e.KeyChar) && !char.IsControl(e.KeyChar);
答案 0 :(得分:3)
一种可能性:
将每个允许的字符放在一个字符串中,看看输入的字符是否存在。
e.Handled = "0123456789()".IndexOf(e.KeyChar) < 0;
string.IndexOf
返回给定char的索引
如果找不到该字符,则返回-1。