0

我使用了以下站点: http: //msdn.microsoft.com/en-us/library/kkx4h3az.aspx 来验证输入 8 位数字,

然后我尝试以这种方式进行验证,以便只允许将字母数字(字母)值输入到文本框中,但它不起作用。

您是否必须应用不同的方法来只允许字母?如果有怎么办?

谢谢

4

2 回答 2

0

这不是我的想法,但它应该让你开始......这似乎是一个常见的问题。如果这不起作用,请继续搜索 SO,您会找到答案。

 Regex regex = new Regex("[a-zA-Z]");
 Match match = regex.Matches(textBox1.Text);
于 2013-03-10T18:03:21.313 回答
0

首先,字母数字表示字母数字。如果你只想要字母,你必须在你的面具中使用“L”。请参阅此链接以供参考。

或者,您可以检查文本更改事件中的输入。这也适用于传统的 TextBox(对于屏蔽文本框,您必须将 TextBox 更改为 MaskedTextBox)。请参见下面的代码:

private void textBox1_TextChanged(object sender, EventArgs e)
{
    TextBox tb = sender as TextBox;
    if (!tb.Text.All(char.IsLetter))
    {
        MessageBox.Show("Only Letters are allowed.", "Invalid Input", MessageBoxButtons.OK, MessageBoxIcon.Warning);
        tb.SelectAll();
    }
}

代码要求using System.Linq;

于 2021-01-26T12:19:52.977 回答