C# WinForms:如何从TextBox的EventArgs获取字符串判断输入长度?
解决方案
- EventArgs是最基础的事件参数类,无法从中获取TextBox的输入字符串,它仅传递事件发生的基础信息,没有关联输入内容的属性。
- 要判断TextBox的输入字符数,直接访问控件自身的
Text属性即可,示例代码如下:// 假设你的TextBox控件名为txtInput if (txtInput.Text.Length > 11) { // 执行字符数超过11后的逻辑,比如提示用户或限制输入 } - 如果是在输入过程中(比如KeyPress事件)想限制字符长度,可以通过
sender参数获取当前TextBox控件,结合KeyPressEventArgs拦截输入:private void txtInput_KeyPress(object sender, KeyPressEventArgs e) { var textBox = sender as TextBox; // 当已有字符数≥11,且输入的不是控制字符(比如退格)时,阻止输入 if (textBox != null && textBox.Text.Length >= 11 && !char.IsControl(e.KeyChar)) { e.Handled = true; } }
内容的提问来源于stack exchange,提问作者pingouin_afk
相关产品推荐
相关产品推荐

