CustomValidator.ControlPropertiesValid Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Checks the properties of the control for valid values.
protected:
override bool ControlPropertiesValid();
protected override bool ControlPropertiesValid ();
override this.ControlPropertiesValid : unit -> bool
Protected Overrides Function ControlPropertiesValid () As Boolean
Returns
true
if the control properties are valid; otherwise, false
.
Examples
The following code example demonstrates how to override the ControlPropertiesValid method in a custom server control so that it always returns the value of the visible property, as long as the ControlToValidate property of the CustomValidator control is on the page and contains validation properties.
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet" Assembly="Samples.AspNet.CS" %>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom CustomValidator - ControlPropertiesValid - C# Example</title>
<script runat="server">
void CustomValidator1_ServerValidate(Object source, ServerValidateEventArgs args)
{
try
{
// Test whether the value entered into the text box is even.
int i = int.Parse(args.Value);
args.IsValid = ((i%2) == 0);
}
catch(Exception ex)
{
args.IsValid = false;
}
}
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CustomValidator - ControlPropertiesValid - C# Example</h3>
<asp:Label id="Label1" runat="server" Text="Enter an even number:" AssociatedControlID="TextBox1" /><br />
<asp:TextBox id="TextBox1" runat="server" />
<aspSample:CustomCustomValidatorControlPropertiesValid
id="Customvalidator1"
runat="server"
ControlToValidate="TextBox1"
Display="Static"
ErrorMessage="Not an even number!"
OnServerValidate="CustomValidator1_ServerValidate" /><br /><br />
<asp:Button id="Button1" runat="server" Text="Validate" />
</form>
</body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom CustomValidator - ControlPropertiesValid - VB.NET Example</title>
<script runat="server">
Sub CustomValidator1_ServerValidate(source As Object, args As ServerValidateEventArgs)
args.IsValid = False
Try
' Test whether the value entered into the text box is even or not.
Dim i As Integer = Integer.Parse(args.Value)
If (i Mod 2) = 0 Then
args.IsValid = True
End If
Catch
End Try
End Sub
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CustomValidator - ControlPropertiesValid - VB.NET Example</h3>
<asp:Label id="Label1" runat="server" Text="Enter an even number:" AssociatedControlID="TextBox1" /><br />
<asp:TextBox id="TextBox1" runat="server" />
<aspSample:CustomCustomValidatorControlPropertiesValid id="Customvalidator1" runat="server" ControlToValidate="TextBox1" Display="Static" ErrorMessage="Not an even number!" OnServerValidate="CustomValidator1_ServerValidate" /><br /><br />
<asp:Button id="Button1" runat="server" Text="Validate" />
</form>
</body>
</html>
using System.Web;
using System.Security.Permissions;
namespace Samples.AspNet
{
[AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomCustomValidatorControlPropertiesValid : System.Web.UI.WebControls.CustomValidator
{
protected override bool ControlPropertiesValid()
{
string controlToValidate = this.ControlToValidate;
// Determine whether the ControlToValidate is on the page
// and contains a valid validation property.
if (controlToValidate.Length > 0)
{
base.CheckControlValidationProperty(controlToValidate, "ControlToValidate");
}
// If the control is visible, then control is valid
// and is ready for validation.
System.Web.UI.Control control = this.FindControl(controlToValidate);
return control.Visible;
}
}
}
Imports System.Web
Imports System.Security.Permissions
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomCustomValidatorControlPropertiesValid
Inherits System.Web.UI.WebControls.CustomValidator
Protected Overrides Function ControlPropertiesValid() As Boolean
Dim controlToValidate As String = Me.ControlToValidate
' Determine whether the ControlToValidate is on the page
' and contains a valid validation property.
If controlToValidate.Length > 0 Then
MyBase.CheckControlValidationProperty(controlToValidate, "ControlToValidate")
End If
' If the control is visible, then control is valid
' and is ready for validation.
Dim control As System.Web.UI.Control = Me.FindControl(controlToValidate)
If control.Visible = True Then
Return True
Else
Return False
End If
End Function
End Class
End Namespace
Applies to
.NET
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기