2012-04-16 8 views
0

私はユーザーコントロールを持っていて、それはbool IsValidDateプロパティを持っています。 CustomValidatorを使用してこの値をチェックし、プロパティの値がfalseの場合はエラーメッセージを返します。ASP.NET - コントロールのプロパティをチェックするためにCustomValidatorを作成する

+0

これはあなたが探しているものかもしれません。http://stackoverflow.com/questions/939802/date-validation-with-asp-net-validator – coder

答えて

1

ユーザーコントロールは、このようなものに見える場合:

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="MyDateUserControl.ascx.cs" Inherits="CustomValidation.MyDateUserControl" %> 

My custom user control 
<asp:TextBox runat="server" ID="DateTextBox" /> 

<asp:CustomValidator runat="server" ValidateEmptyText="true" ID="DateCustomValidator" ControlToValidate="DateTextBox" OnServerValidate="DateCustomValidator_ServerValidate" ErrorMessage="The date is not valid" /> 

<asp:Button ID="SubmitButton" runat="server" Text="Submit" /> 

を次に、あなたの分離コードであなたが使用することができます。

public bool IsValidDate 
{ 
    get 
    { 
     DateTime temp; 
     return DateTime.TryParse(DateTextBox.Text, out temp); 
    } 
} 

protected void DateCustomValidator_ServerValidate(object source, ServerValidateEventArgs args) 
{ 
    args.IsValid = IsValidDate; 
} 

をカスタムバリデータは、あなたの一部にしたくない場合IsValidDateの前にユーザーコントロールの名前を付ける必要があります。

関連する問題