CustomValidator.ServerValidate イベント
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
CustomValidator プロパティの値が ControlToValidate によって検証されたときに発生します。 この API は、互換性のために残されています。 ASP.NET モバイル アプリケーションを開発する方法については、「ASP.NET を使用した Mobile Apps & サイト」を参照してください。
public:
event System::Web::UI::WebControls::ServerValidateEventHandler ^ ServerValidate;
[System.ComponentModel.Bindable(false)]
public event System.Web.UI.WebControls.ServerValidateEventHandler ServerValidate;
[<System.ComponentModel.Bindable(false)>]
member this.ServerValidate : System.Web.UI.WebControls.ServerValidateEventHandler
Public Custom Event ServerValidate As ServerValidateEventHandler
イベントの種類
- 属性
例
次の例では、イベントをトラップして、ページを ServerValidate 検証するロジックを追加する方法を示します。
<%@ Page Language="C#"
Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile"
Namespace="System.Web.UI.MobileControls"
Assembly="System.Web.Mobile" %>
<script runat="server">
// If the page validates, go to page 2
protected void Submit_Click(Object sender, EventArgs e)
{
if (Page.IsValid)
{
ActiveForm = Form2;
}
}
// Validate whether the number is even
private void ServerValidate(object source,
ServerValidateEventArgs args)
{
// Convert the text to a number
int num;
Int32.TryParse(numberBox.Text, out num);
// Test for an even number
if (num > 0)
args.IsValid = ((num % 2) == 0);
else
args.IsValid = false;
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
<mobile:form id="Form1" runat="server">
<mobile:Label ID="Label1" runat="server">
Please enter an even number greater than zero.
</mobile:Label>
<mobile:TextBox ID="numberBox" Runat="server"
Numeric="true" MaxLength="2" />
<mobile:CustomValidator ID="CustomValidator1"
ControlToValidate="numberBox"
OnServerValidate="ServerValidate" runat="server">
Your number is not an even number.
</mobile:CustomValidator>
<mobile:Command ID="Command1" runat="server"
OnClick="Submit_Click">
Submit
</mobile:Command>
</mobile:form>
<mobile:Form id="Form2" runat="server">
<mobile:Label ID="Label2" runat="server">
Your number is an even number.
</mobile:Label>
</mobile:Form>
</body>
</html>
<%@ Page Language="VB"
Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile"
Namespace="System.Web.UI.MobileControls"
Assembly="System.Web.Mobile" %>
<script runat="server">
' If the page validates, go to page 2
Protected Sub Submit_Click(ByVal sender As Object, ByVal e As EventArgs)
If (Page.IsValid) Then
ActiveForm = Form2
End If
End Sub
' Validate whether the number is even
Private Sub ServerValidate(ByVal source As Object, _
ByVal args As ServerValidateEventArgs)
' Convert the text to a number
Dim num As Integer
Integer.TryParse(numberBox.Text, num)
' Test for an even number
If (num > 0) Then
args.IsValid = ((num Mod 2) = 0)
Else
args.IsValid = False
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
<mobile:form id="Form1" runat="server">
<mobile:Label ID="Label1" runat="server">
Please enter an even number greater than zero.
</mobile:Label>
<mobile:TextBox ID="numberBox" Runat="server"
Numeric="true" MaxLength="2" />
<mobile:CustomValidator ID="CustomValidator1"
ControlToValidate="numberBox"
OnServerValidate="ServerValidate" runat="server">
Your number is not an even number.
</mobile:CustomValidator>
<mobile:Command ID="Command1" runat="server"
OnClick="Submit_Click">
Submit
</mobile:Command>
</mobile:form>
<mobile:Form id="Form2" runat="server">
<mobile:Label ID="Label2" runat="server">
Your number is an even number.
</mobile:Label>
</mobile:Form>
</body>
</html>
注釈
メソッドがこのイベントに登録されている場合は、 プロパティの ControlToValidate 値を使用して呼び出されます。 検証は、このイベント ハンドラーが を返す場合にのみ成功します true
。
適用対象
こちらもご覧ください
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET