CompareValidator.ControlPropertiesValid Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Comprueba las propiedades del control para ver los valores válidos.
protected:
override bool ControlPropertiesValid();
protected override bool ControlPropertiesValid();
override this.ControlPropertiesValid : unit -> bool
Protected Overrides Function ControlPropertiesValid () As Boolean
Devoluciones
true si las propiedades del control son válidas; de lo contrario, false.
Excepciones
ControlToValidate y ControlToCompare tienen el mismo ID.
O bien
El valor de una propiedad de destino no se puede convertir en el esperado Type.
Ejemplos
En el ejemplo de código siguiente se muestra cómo invalidar el ControlPropertiesValid método en un control de servidor personalizado para que siempre devuelva el valor de la propiedad visible, siempre que la ControlToCompare propiedad del CompareValidator control esté en la página y contenga propiedades de validación.
Importante
Este ejemplo tiene un cuadro de texto que acepta la entrada del usuario, que es una amenaza de seguridad potencial. De forma predeterminada, ASP.NET páginas web validan que la entrada del usuario no incluye elementos HTML ni de script. Para obtener más información, consulte Información general sobre vulnerabilidades de seguridad de script.
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" Assembly="Samples.AspNet.CS" %>
<%@ Page language="c#" %>
<!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 CompareValidator - ControlPropertiesValid - C# Example</title>
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
// Run the Page Validate method in order to force
// the CompareValidate to show it's error message.
Page.Validate();
}
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CompareValidator - ControlPropertiesValid - C# Example</h3>
<asp:TextBox id="TextBox1" runat="server">123</asp:TextBox><br />
<aspSample:CustomCompareValidatorControlPropertiesValid
id="CompareValidator1"
runat="server"
Display="Dynamic"
ErrorMessage="The value of TextBox1 must be '456'."
ControlToValidate="TextBox1"
ValueToCompare="456" /><br />
<asp:Button id="Button1" runat="server" Text="Button" />
</form>
</body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ Page language="VB" %>
<!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 CompareValidator - ControlPropertiesValid - VB.NET Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CompareValidator - ControlPropertiesValid - C# Example</h3>
<asp:TextBox id="TextBox1" runat="server">123</asp:TextBox><br />
<aspSample:CustomCompareValidatorControlPropertiesValid
id="CompareValidator1" runat="server" Display="Dynamic"
ErrorMessage="The value of TextBox1 must be '456'."
ControlToValidate="TextBox1" ValueToCompare="456" /><br />
<asp:Button id="Button1" runat="server" Text="Button" />
</form>
</body>
</html>
using System.Web;
using System.Security.Permissions;
namespace Samples.AspNet.CS.Controls
{
[AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomCompareValidatorControlPropertiesValid : System.Web.UI.WebControls.CompareValidator
{
protected override bool ControlPropertiesValid()
{
// Determine whether the ControlToValidate is on the page and contains a validation properties.
base.CheckControlValidationProperty(this.ControlToValidate, "ControlToValidate");
// If the control is visible, then control is valid and is ready for validation.
System.Web.UI.Control control = this.FindControl(this.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 CustomCompareValidatorControlPropertiesValid
Inherits System.Web.UI.WebControls.CompareValidator
Protected Overrides Function ControlPropertiesValid() As Boolean
' Determine whether the ControlToValidate is on the page and contains a validation properties.
MyBase.CheckControlValidationProperty(Me.ControlToValidate, "ControlToValidate")
' If the control is visible, then control is valid and ready for validation.
Dim control As System.Web.UI.Control = Me.FindControl(Me.ControlToValidate)
If control.Visible = True Then
Return True
Else
Return False
End If
End Function
End Class
End Namespace