zoukankan      html  css  js  c++  java
  • ValidateTextBox发布绝对实用


    最新更新版本,比这个版好用多了,呵呵 :http://www.cnblogs.com/thinhunan/archive/2005/04/15/137982.html


    三天过后,总算赶出了THINControls.WebControls命名空间的两名新丁:


    ValidateTextBox;AutoFlexTextBox。


    请认真查看以下控件说明:

    ValidateTextBox是完全独立于官方验证控件的一组加强验证功能的TextBox,控件都提供两重控制:输入时判断输入的字符是否合法,页布提交时再次进行语法完整性、正确性验证。本组控件可完美与官方的验证控件并存,并提供TextChanged事件响应和AutoPostBack支持(.net 1.0官方验证控件是不支持TextBox回传时检测的,.net 1.1我还没有时间去做测试,不过你在使用了官方验证控件的同时,使用了本组控件,则会自动更正微软的错误。)

    由于微软的验证控件在验证通过后很霸道的提交事件,所以一般的做法会造成它的验证通过直接Sumbit,而使别的验证失效,解决此问题和AutoPostBack时的问题花了我一个早上的时间,大家可以看看控件生成的代码,看看我的解决方法和思路。




    ValidateTextBox当前版本集成以下验证和控制


    TextValidType:

      Int,    //123/+123/-123 


      PositiveInt,   //+123/123 


      NegativeInt,   //-123 


      Float,//   111.111/+11.11/-11.11 


      PositiveFloat,//  +11.111/11.111 


      NegativeFloat,//  -111.111 


      Email,//   abc@bcd.com 


      URL,/   /http://... 


      Color,//#aabbcc 


      Chinese,//中文 


      ASCII,//半角字符 


      ZipCode,//邮编 


      Tel,//座机(只能是中国的) 


      Mobile,//手机 


      ImageFile,//图片文件URL 


      ZipFile,//ZIP文件URL,RAR 


      Date,//日期 


      Capitalize,//首字字大写 


      Uppercase,//转换成大写 


      Lowercase,//  转换成小写 


      Time,//时间 


      IPAdress//10.1.0.21



     


    所有验证可同时提供字数控制
     


    IsLimitLength开启字数控制,CountLengthMode可设一个全角字符算一个字还是两个字,MinLength最少多少字,0以上就可以当RequiredFieldValidator用了,MaxLenth最多多少字,0为无限制。

    AutoPostBack开启自动回传




     


    Text设置TextBox的文字。


    ErrorMessage设置出错时的提示。


    MessageStyle设置ErrorMessage的显示样式,如果设了ErrorMessage而没有显示,请看看这里设好没有。


    TextboxStyle,TextBox的样式。


    OuterStyle,设置控件外框的样式。

     



     

    EnableClientScript设为false可以把控件变成一个普通的TextBox。



    AutoFlexTextBox 只是一个简单的多行文本域,可以自动根据内容伸缩,可以设定伸编的最大限度,此控件创意来源于网上,不记得是哪位仁兄的了,特此说明。


    MaxHeight最大高度。




    下载d


    请关注本Blog的计划和动向。

    请提出本控件组的改进建议,特别是验证Type的扩展,非常感谢。

    用以下方法试用一下,可快速预览功能:

    if(!IsPostBack)
       {
        THINControls.WebControls.THINTextBox.ValidateTextBox valid;
        for(int i = 0 ; i < 22 ; i ++)
        {
         valid = new THINControls.WebControls.THINTextBox.ValidateTextBox();
         valid.CountLengthMode = THINControls.WebControls.THINTextBox.LengthMode.BigCharEqualTwo;
         valid.ID = "valid" + i.ToString();
         valid.MinLength = 5;
         valid.MaxLength = 20;
         valid.TextValidType = (THINControls.WebControls.THINTextBox.ValidType)i;
         valid.IsLimitLength = true;
         valid.ErrorMessage = ((THINControls.WebControls.THINTextBox.ValidType)i).ToString();
         PlaceHolder1.Controls.Add(valid);

        }
       }


    楼下兄弟说会失效,你看看这个图:


  • 相关阅读:
    Tree Grafting
    敌兵布阵
    畅通工程(并查集)
    The Suspects(并查集)
    Ubiquitous Religions(friends变形)
    Friends(采用树结构的非线性表编程)
    小球下落(二叉树)
    铁轨
    卡片游戏
    征服C指针
  • 原文地址:https://www.cnblogs.com/think/p/137369.html
Copyright © 2011-2022 走看看