CompareValidator.ControlPropertiesValid Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Проверяет свойства элемента управления на допустимость значений.
protected:
override bool ControlPropertiesValid();
protected override bool ControlPropertiesValid ();
override this.ControlPropertiesValid : unit -> bool
Protected Overrides Function ControlPropertiesValid () As Boolean
Возвращаемое значение
Значение true
, если свойства элемента управления являются допустимыми. В противном случае — значение false
.
Исключения
ControlToValidate и ControlToCompare имеют одинаковые ID.
-или-
Не удается преобразовать значение целевого свойства к предполагаемому типу Type.
Примеры
В следующем примере кода показано, как переопределить ControlPropertiesValid метод в пользовательском серверном элементе управления, чтобы он всегда возвращал значение видимого CompareValidator свойства, если ControlToCompare свойство элемента управления находится на странице и содержит свойства проверки.
Важно!
В этом примере имеется текстовое поле, принимающее вводимые пользователем данные, что является потенциальной угрозой безопасности. По умолчанию данные, вводимые пользователем на веб-страницах ASP.NET, проверяются на наличие скриптов и HTML-элементов. Дополнительные сведения см. в разделе Общие сведения об использовании сценариев.
<%@ 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