Winforms阻止用户输入文本框中的英语以外的其他语言字符

时间:2012-12-18 10:40:21

标签: vb.net winforms localization .net-2.0

我有一些文本框映射到数据库中的主键字段,我不希望用户使用除英语或数字或下层之外的任何语言编写,即使使用手动将输入语言切换为其他任何语言。我怎样才能实现同样的目标。我在.net 2.0所以没有花哨的东西。请帮忙。

1 个答案:

答案 0 :(得分:1)

您可以使用Regex检查输入。 此模式将匹配任何英文字母[a-zA-Z]

例如俄语ю不匹配

Match m = Regex.Match("ю", "[a-zA-Z]");

处理KeyPress事件以实现所需的功能

    private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
    {
        e.Handled = !Regex.Match(e.KeyChar.ToString(), "[a-zA-Z]").Success;
    }