RegularExpressionValidator.EvaluateIsValid メソッド

Dim returnValue As Boolean returnValue = Me.EvaluateIsValid


RegularExpressionValidator.EvaluateIsValid メソッド
アセンブリ: System.Web (system.web.dll 内)

Dim returnValue As Boolean returnValue = Me.EvaluateIsValid
入力コントロールの値が有効である場合は true。それ以外の場合は false。

カスタム サーバー コントロールで EvaluateIsValid メソッドをオーバーライドし、RegularExpressionValidator のパターン検索式と照らし合わせて値をチェックする方法を次のコード例に示します。
Imports System.Web Imports System.Security.Permissions Namespace Samples.AspNet.VB.Controls <AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _ Public NotInheritable Class CustomRegularExpressionValidatorEvaluateIsValid Inherits System.Web.UI.WebControls.RegularExpressionValidator Protected Overrides Function EvaluateIsValid() As Boolean ' Get the control to validate's validation value Dim controlValue As String = GetControlValidationValue(Me.ControlToValidate) ' If the value is null or empty, then return true If controlValue Is Nothing OrElse controlValue.Trim().Length = 0 Then Return True Else ' Else try running the Regular Expression against the value ' and see if there is a match. Try Dim regExpMatch As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(controlValue, Me.ValidationExpression) Return regExpMatch.Success AndAlso regExpMatch.Index = 0 AndAlso regExpMatch.Length = controlValue.Length Catch Return True End Try End If End Function End Class End Namespace
using System.Web; using System.Security.Permissions; namespace Samples.AspNet.CS.Controls { [AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class CustomRegularExpressionValidatorEvaluateIsValid : System.Web.UI.WebControls.RegularExpressionValidator { protected override bool EvaluateIsValid() { // Get the control to validate's validation value string controlValue = GetControlValidationValue(this.ControlToValidate); // If the value is null or empty, then return true if (controlValue == null || controlValue.Trim().Length == 0) { return true; } else { // Else try running the Regular Expression against the value // and see if there is a match. try { System.Text.RegularExpressions.Match regExpMatch = System.Text.RegularExpressions.Regex.Match(controlValue, this.ValidationExpression); return(regExpMatch.Success && regExpMatch.Index == 0 && regExpMatch.Length == controlValue.Length); } catch { return true; } } } } }
package Samples.AspNet.JSL.Controls; public class CustomRegularExpressionValidatorEvaluateIsValid extends System.Web.UI.WebControls.RegularExpressionValidator { protected boolean EvaluateIsValid() { // Get the control to validate's validation value String controlValue = GetControlValidationValue(this. get_ControlToValidate()); // If the value is null or empty, then return true if (controlValue == null || controlValue.Trim().get_Length() == 0) { return true; } else { // Else try running the Regular Expression against the value // and see if there is a match. try { System.Text.RegularExpressions.Match regExpMatch = System.Text.RegularExpressions.Regex.Match(controlValue, this.get_ValidationExpression()); return regExpMatch.get_Success() && regExpMatch.get_Index() == 0 && regExpMatch.get_Length() == controlValue.get_Length(); } catch (System.Exception exp) { return true; } } } //EvaluateIsValid } //CustomRegularExpressionValidatorEvaluateIsValid
前の例で定義した CustomRegularExpressionValidatorEvaluateIsValid コントロールを Web フォーム ページで使用する方法を次のコード例に示します。
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %> <%@ Page Language="VB" AutoEventWireup="True" %> <HTML> <HEAD> <title>Custom RegularExpressionValidator - EvaluateIsValid - VB.NET Example</title> <script runat="server"> Sub Button1_Click(sender As Object, e As EventArgs) If Page.IsValid Then Label1.Text="Page is valid." Else Label1.Text="Page is not valid!" End If End Sub </script> </HEAD> <body> <form id="Form1" method="post" runat="server"> <h3>Custom RegularExpressionValidator - EvaluateIsValid - VB.NET Example</h3> <table bgcolor="#eeeeee" cellpadding="10"> <tr valign="top"> <td colspan="3"> <asp:Label ID="Label1" Text="Enter a 5 digit zip code" runat="server"/> </td> </tr> <tr> <td colspan="3"> <b>Personal Information</b> </td> </tr> <tr> <td align="right"> Zip Code: </td> <td> <asp:TextBox id="TextBox1" runat="server"/> </td> <td> <aspSample:CustomRegularExpressionValidatorEvaluateIsValid id="Regularexpressionvalidator1" runat="server" ControlToValidate="TextBox1" ValidationExpression="\d{5}" ErrorMessage="Zip code must be 5 numeric digits" Display="Static" EnableClientScript="False" /> </td> </tr> <tr> <td></td> <td> <asp:Button text="Button1" OnClick="Button1_Click" runat=server ID="Button1"/> </td> <td></td> </tr> </table> </form> </body> </HTML>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" Assembly="Samples.AspNet.CS" %> <%@ Page Language="C#" AutoEventWireup="True" %> <HTML> <HEAD> <title>Custom RegularExpressionValidator - EvaluateIsValid - C# Example</title> <script runat="server"> void Button1_Click(Object sender, EventArgs e) { if (Page.IsValid) { Label1.Text = "Page is valid."; } else { Label1.Text = "Page is invalid!"; } } </script> </HEAD> <body> <form id="Form1" method="post" runat="server"> <h3>Custom RegularExpressionValidator - EvaluateIsValid - C# Example</h3> <table bgcolor="#eeeeee" cellpadding="10"> <tr valign="top"> <td colspan="3"> <asp:Label ID="Label1" Text="Enter a 5 digit zip code" runat="server"/> </td> </tr> <tr> <td colspan="3"> <b>Personal Information</b> </td> </tr> <tr> <td align="right"> Zip Code: </td> <td> <asp:TextBox id="TextBox1" runat="server"/> </td> <td> <aspSample:CustomRegularExpressionValidatorEvaluateIsValid id="Regularexpressionvalidator1" runat="server" ControlToValidate="TextBox1" ValidationExpression="\d{5}" ErrorMessage="Zip code must be 5 numeric digits" Display="Static" EnableClientScript="False" /> </td> </tr> <tr> <td></td> <td> <asp:Button text="Button1" OnClick="Button1_Click" runat=server ID="Button1"/> </td> <td></td> </tr> </table> </form> </body> </HTML>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.JSL.Controls" Assembly="Samples.AspNet.JSL" %> <%@ Page Language="VJ#" AutoEventWireup="True" %> <HTML> <HEAD> <title>Custom RegularExpressionValidator - EvaluateIsValid - VJ# Example</title> <script runat="server"> void Button1_Click(Object sender, EventArgs e) { if (get_Page().get_IsValid()) { Label1.set_Text("Page is valid."); } else { Label1.set_Text("Page is invalid!"); } } //Button1_Click </script> </HEAD> <body> <form id="Form1" method="post" runat="server"> <h3>Custom RegularExpressionValidator - EvaluateIsValid - VJ# Example</h3> <table bgcolor="#eeeeee" cellpadding="10"> <tr valign="top"> <td colspan="3"> <asp:Label ID="Label1" Text="Enter a 5 digit zip code" runat="server"/> </td> </tr> <tr> <td colspan="3"> <b>Personal Information</b> </td> </tr> <tr> <td align="right"> Zip Code: </td> <td> <asp:TextBox id="TextBox1" runat="server"/> </td> <td> <aspSample:CustomRegularExpressionValidatorEvaluateIsValid id="Regularexpressionvalidator1" runat="server" ControlToValidate="TextBox1" ValidationExpression="\d{5}" ErrorMessage="Zip code must be 5 numeric digits" Display="Static" EnableClientScript="False" /> </td> </tr> <tr> <td></td> <td> <asp:Button text="Button1" OnClick="Button1_Click" runat=server ID="Button1"/> </td> <td></td> </tr> </table> </form> </body> </HTML>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からRegularExpressionValidator.EvaluateIsValidを検索する場合は、下記のリンクをクリックしてください。

- RegularExpressionValidator.EvaluateIsValidのページへのリンク