gpt4 book ai didi

c# - 让 MaskedTextBox 只接受字母

转载 作者:行者123 更新时间:2023-11-30 19:49:15 25 4
gpt4 key购买 nike

这是我的代码:

private void Form1_Load(object sender, EventArgs e)
{
maskedTextBox1.Mask = "*[L]";
maskedTextBox1.MaskInputRejected += new MaskInputRejectedEventHandler(maskedTextBox1_MaskInputRejected);
}

我怎样才能将它设置为只接受字母,但不管用户想要多少?谢谢!

最佳答案

如果屏蔽文本框接受正则表达式,这会很容易,但遗憾的是它们不接受。

一种(虽然不是很漂亮)方法是使用可选字母 ? 掩码并输入与文本框中允许的最大长度相同的数量,即

maskedTextBox1.Mask = "????????????????????????????????.......";

或者,您可以使用自己的验证而不是掩码,并使用像这样的正则表达式

void textbox1_Validating(object sender, CancelEventArgs e)
{
if (!System.Text.RegularExpressions.Regex.IsMatch(textbox1.Text, @"^[a-zA-Z]+$"))
{
MessageBox.Show("Please enter letters only");
}
}

或者另一种方法是通过处理 KeyPress 来忽略除字母之外的任何按键。事件,在我看来这是最好的方式。

private void textbox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (!System.Text.RegularExpressions.Regex.IsMatch(e.KeyChar.ToString(), @"^[a-zA-Z]+$"))
e.Handled = true;
}

关于c# - 让 MaskedTextBox 只接受字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4285653/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com