新建一个网站,默认主页为Default.aspx。在Default.aspx页面上添加一个TextBox控件,一个Custom Validator控件和一个Button控件。如图:

ASP.NET中Custom Validator验证控件的使用_asp.net

源代码如下:

<%@ Page Title="主页" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
CodeBehind="Default.aspx.cs" Inherits="CustomValidatorDemo01._Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<p>
请输入一个偶数:<asp:TextBox ID="txtNum" runat="server"></asp:TextBox>
<asp:CustomValidator ID="RequiredFieldValidator1" runat="server"
ErrorMessage="您输入的不是偶数" ControlToValidate="txtNum" OnServerValidate="ValidateEven"></asp:CustomValidator>
</p>
<p>
<asp:Button ID="btnCheck" runat="server" Text="验证" />
</p>
</asp:Content>


Default.aspx.cs代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace CustomValidatorDemo01
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}

protected void ValidateEven(object source, ServerValidateEventArgs args)
{
try
{
if ((Convert.ToInt32(args.Value) % 2) == 0)
{
args.IsValid = true;
}
else
args.IsValid = false;
}
catch (Exception e)
{
args.IsValid = false;
}
}
}
}


运行效果如图:

ASP.NET中Custom Validator验证控件的使用_.net_02