Winform 程式 TextBox 控制超出最大长度(英文与汉字)不可输入 解决方法
来源:互联网 发布:机打收据软件 编辑:程序博客网 时间:2024/06/05 05:54
C#中TextBox使用中遇到的问题--MaxLength判断英文与汉字是一样对待的如何改变这一情况
C#中TextBox中MaxLength判断英文与汉字是一样对待的如何改变这一情况
例如设置其MaxLength=6,如果输入“abcdef”之后就不能再输入,而输入“这是一个测试”之后也会不能再添加,而数据库中这两个字符串长度是不一样的。前者是6,而后者多数应该是12。这样就起不到限制的作用。经过重写TextBox的OnTextChange之后可以实现MaxLength=6,输入英文只能是“abcdef”,而汉字则只能是“这是一”。代码如下
public class MyTextBox : System.Windows.Forms.TextBox
{
{
protected override void OnTextChanged(EventArgs e)
{
string str= this.Text;
int lent = System.Text.ASCIIEncoding.Default.GetByteCount(str);
int max=this.MaxLength;
byte[] bb=System.Text.ASCIIEncoding.Default.GetBytes(str);//得到输入的字符串的数组
if(lent>max)
{
this.Text=System.Text.ASCIIEncoding.Default.GetString(bb,0,max);//将截断后的字节数组转换成字符串
this.SelectionStart=max;//将光标放置在输入文字的最后
}
base.OnTextChanged(e);
}
}
{
string str= this.Text;
int lent = System.Text.ASCIIEncoding.Default.GetByteCount(str);
int max=this.MaxLength;
byte[] bb=System.Text.ASCIIEncoding.Default.GetBytes(str);//得到输入的字符串的数组
if(lent>max)
{
this.Text=System.Text.ASCIIEncoding.Default.GetString(bb,0,max);//将截断后的字节数组转换成字符串
this.SelectionStart=max;//将光标放置在输入文字的最后
}
base.OnTextChanged(e);
}
}
- Winform 程式 TextBox 控制超出最大长度(英文与汉字)不可输入 解决方法
- 如何控制TextBox只能输入英文或只能输入汉字?
- 控制textBox的输入数字长度与范围
- C#的winform中控制TextBox中只能输入数字?
- winform textBox输入提示
- TextBox 在TextMode为"MultiLine"时怎样控制输入长度。
- js控制输入框最大长度
- 超出最大的要求长度
- uploadify 超出最大请求长度
- TextBox输入控制代码
- WinForm TextBox 只能输入数字
- C#winform设置textbox属性不可编辑
- .NET截取指定长度汉字超出部分
- iOS UITextField 限制输入长度,中英文混排,汉字占2个长度,英文数字占1个长度
- VB6.0中,在一个TextBox里面只输入数字,不能输入其它,比如汉字,符号,英文的方法
- wcf ria services 异步请求提示错误“超出了2083的最大uri长度” 解决方法
- 控制 TextBox 输入时若是英文自动转大写或转小写的方法
- C# 控制 TextBox 输入时若是英文自动转大写或转小写的方法
- AIDL和远程Service调用
- Oracle ORA-00600: [dmlsrvColLenChk_2:dty] 错误 说明
- 总读书记录-3月
- Android C++中调用java
- Java调用存储过程
- Winform 程式 TextBox 控制超出最大长度(英文与汉字)不可输入 解决方法
- 第二周任务1-1 十进制转换二进制
- Flex3学习轨迹:使用ToolTipManager来设置延时提示
- js中this
- android - 自定义标题栏(在标题栏中增加按钮和文本居中)
- C#调用存储过程
- android 隐藏键盘
- c#调用delphi编写的SOAP Web Service(2)
- IAR的编译过程