知识大全 自定义创建web验证控件

Posted

篇首语:知是行的主意,行是知的功夫。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 自定义创建web验证控件相关的知识,希望对你有一定的参考价值。

  做开发的都知道在VS里提供了很多的验证控件 比如 RequiredFieldValidator RangeValidator RegularExpressionValidator等等 他们都是继承于BaseValidator这个基类 BaseValidator类是一个抽象(abstract)类 它要求子类必须实现一个方法 EvaluateIsValid——当被检验的表单字段通过验证时返回True

  BaseValidator类也包含一些其他的方法 可以重写(override)或做别的用途 这些方法中最有用的是下面这个

  GetControlValidationValue——用于获取被验证的控件的值

  创建自定义验证控件时 要重写EvaluateIsValid()方法 并在EvaluateIsValid()方法中调用GetControlValidationValue来获得被验证的表单字段的值

  接下来就来创建一个验证最少字符个数

  首先先创建一个类放在项目的App_Code文件夹里 所有加入到这个文件夹的类都会自动被ASP NET Framework编译

  

  下面是类的内容

  using System;

  using System Collections Generic;

  using System Linq;

  using System Text;

  //在类中添加

  using System Web;

  using System Web UI;

  using System Web UI WebControls;

  namespace WebApp_Model

  

  public class StudentMinLengthValidate : BaseValidator

  

  int _minLength = ;

  public int MinLength

  

  get return _minLength;

  set _minLength = value;

  

  protected override bool EvaluateIsValid()

  

  string value = this GetControlValidationValue(this ControlToValidate);

  if (value Length < _minLength)

  return false;

  else

  return true;

  

  

  

  这样验证的类就OK了

  接下来就是怎么用该类了

  其实用该类的方式跟VS里的验证控件是一样的 因为都是继承于BaseValidate

   首先先注册一下我们刚才建的类

  <%@ Register TagPrefix= custom Namespace= WebApp_Model %>

   在 aspx页面上放一个textbox控件

  <asp:TextBox ID= textbox runat= server ></asp:TextBox>

   放入该验证控件

  <custom:StudentMinLengthValidate id= valCustom Runat= server MinLength= ControlToValidate= textbox ErrorMessage= 字符太少 />

   再加入按钮进行检验一下

  <asp:Button ID= Button runat= server onclick= Button _Click Text= Button />

  后台代码

  protected void Button _Click(object sender EventArgs e)

  

  if (Page IsValid)

  

  Response Write( true );

  

  

  演示效果

  输入

  

  输入 …超过十位

cha138/Article/program/net/201311/13078

相关参考

知识大全 ASP.NET 实现验证码功能的Web控件

ASP.NET实现验证码功能的Web控件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  的设计方

知识大全 基于ASP.NET的Web动态控件创建

基于ASP.NET的Web动态控件创建  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  摘要web

知识大全 基于asp.net的web页面动态控件创建以及使用

 摘要web设计中有很多场合页面的控件要动态创建甚至只能动态创建这样可以增加页面的灵活性但是给程序员带来了一些麻烦比如要使用动态创建的控件怎么使用都是要求解决的问题本文基于aspnet简要介绍了页面的

知识大全 .net 自定义控件显示及传参

  【原创】给自定义控件ascx文件传参数并传值让你定义的控件可用性更大  在网上查找了半天终于还是没有结果最后看到一个人发的代码才激发了点灵感在控件ascxcs声明控件属性  &

知识大全 struts2自定义验证器(身份证验证)

  struts的验证器是用的xwork里面的验证自定义验证器就是根据源码继承已有的字段验证器而来具体步骤如下:  展开xworkjaropensymphonyxwork  validatorvali

知识大全 技术分享——开发Eclipse自定义控件

技术分享——开发Eclipse自定义控件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  现在基于

知识大全 自定义控件中使用枚举类型的属性

  在控件中定义枚举类型的属性  publicenumDTableStateSelectShowAddnew=SaveAddnew=ShowEdit=SaveEdit=Delete=Show=List

知识大全 开发Eclipse下的自定义控件[2]

开发Eclipse下的自定义控件[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!addPain

知识大全 开发Eclipse下的自定义控件[3]

开发Eclipse下的自定义控件[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!addMous

知识大全 开发Eclipse下的自定义控件[5]

开发Eclipse下的自定义控件[5]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!publicv