CustomValidator.ControlPropertiesValid Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Memeriksa properti kontrol untuk nilai yang valid.
protected:
override bool ControlPropertiesValid();
protected override bool ControlPropertiesValid();
override this.ControlPropertiesValid : unit -> bool
Protected Overrides Function ControlPropertiesValid () As Boolean
Mengembalikan
true jika properti kontrol valid; jika tidak, false.
Contoh
Contoh kode berikut menunjukkan cara mengambil alih ControlPropertiesValid metode dalam kontrol server kustom sehingga selalu mengembalikan nilai properti yang terlihat, selama ControlToValidate properti CustomValidator kontrol ada di halaman dan berisi properti validasi.
<%@ 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