C#在控制控件输入文本的长度时要注意两个问题:
1、传递的事件参数类型要是 KeyPressEventArgs;
2、对退格键(backspace)做例外处理,不然在输入到最大程度时无法使用退格键删除已输入的字符,退格是'\b'。
int maxLength = 19; // the max length of textbox
private void DAForm_myBox4_KeyPress(object sender, KeyPressEventArgs e)
{
int len = this.DAForm_myBox4.Text.Trim().Length;
this.controlMaxLength(len,e);
}
private void controlMaxLength(int len, KeyPressEventArgs e)
{
if (len > maxLength)
{
if (len == maxLength + 1 && e.KeyChar == '\b')
{ }
else
{e.Handled = true; }
}
}
本文介绍如何在C#中通过KeyPress事件限制文本框的输入长度,并确保能够正常处理退格键操作,避免当达到最大长度时无法删除已输入字符的问题。
332

被折叠的 条评论
为什么被折叠?



