动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
  
   .Net → 阅读文章

 有关TextBox中输入字符控制的一种解决办法

作者来源: 
阅读 数 285 人次 , 2006-3-29 4:34:00 

我们知道,在c#中,textbox控件对输入字符的控制有keypress、keyup、和keydown事件来使用,但大家也看到了,这几个事件对输入字符的控制都有一定的缺陷,如果,你使用中文输入法,那么很多原来你不希望输入的字符也可以输入进去。这几天做程序的时候,就碰到了这个问题,我的解决思路很简单,既然这三个事件不再起作用,那么我就使用了textbox控件中时刻能发生的textchanged事件,以期望在这个事件中作些东西,以达到控制字符的目的。废话就不多说了,我将控制输入字符为数字的代码粘贴出来,希望大家多指正,如果能对你有益的话,我就更happy了。

 
private system.windows.forms.textbox textbox1;
private string text;
public form1()
{
text = textbox1.text;
}
private void textbox1_textchanged(object sender, system.eventargs e)
{
  int len = text.length;
if(len < textbox1.text.length)
{
int index = textbox1.text.indexof(text);
char c = (textbox1.text.remove(index,text.length))[0];
if(c.compareto('0') < 0||c.compareto('9') >0)
{
textbox1.text = text;
textbox1.selectionstart = text.length;
}
}
  text = textbox1.text;

}

 
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:ASP.NET访问Oracle数据库的方法
· 下一篇:ASP.NET中利用cookies保持客户端信息
· ASP.NET创建XML Web服务全接触(14)
· 用ASP.Net写一个发送ICQ信息的程序
· JSP内幕
· 使用JScript.NET创建asp.net页面(三)
· 从资料源取回第二个DataTable


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077