我有一个带有一些编辑框的Winform。

表格也可以用其他语言加载,例如中文!
要求是某些文本框应仅接受英文字符
例如,当用户在“Tex”框1中键入内容时,应使用英文
而如果他在文本框2和3中键入中文,则该文本应为中文?

有可能做这样的事情!

最佳答案

是的,肯定有可能。您可以添加一个验证事件处理程序来检查字符。您可以使用允许的字符字典,或者如果将字符限制为某种编码(也许是UTF-8),则可以使用<>将字符与一系列字符进行比较。

更具体地说:您可以处理KeyPress事件。如果e.KeyChar无效,请将e.Handled设置为true

尝试这个:

private void textBox_KeyPress(object sender, KeyPressEventArgs e)
{
    if (System.Text.Encoding.UTF8.GetByteCount(new char[] { e.KeyChar }) > 1)
    {
        e.Handled = true;
    }
}

关于c# - 仅限英语字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4342141/

10-09 08:12
查看更多