2011-12-07 7 views
1

私はテキストボックスなどのコントロールを含むPanelコントロールを持っています。テキストボックスを検証するためにasp.netバリデーターを使用します。Panleが無効になっているとテキストボックスが無効になりますが、 RequiredFieldValidatorは無効なテキストボックスを検証します。Asp.net validators無効なコントロール

<asp:Panel ID="Panel1" runat="server" Enabled="false"> 
    <asp:TextBox ID="TextBox2" runat="server" /> 
    <asp:RequiredFieldValidator runat="server" ErrorMessage="RequiredFieldValidator" 
     ForeColor="#FF3300" ControlToValidate="TextBox2"></asp:RequiredFieldValidator> 
</asp:Panel> 

無効なコントロールを検証しないバリデーターはどのように設定できますか?

答えて

3

いくつかのコントロールが無効になっている場合は、CausesValidation="False"

<asp:Button id="Button1" runat="server" 
    Text="Cancel" CausesValidation="False"> 
</asp:Button> 

そのプロパティを設定することができますにEDITED

あなたは

if (!panel.Enabled) 
{ 
    RequiredFieldValidator1.Enabled = false;// disable your all validators 
} 
+0

いいえいいえ私はそれらの中にコントロール付きのパネルをいくつか持っています。私はそれらを有効または無効にします。 'Enabled'パネルのコントロールを有効にしたい – Arian

+0

あなたは尊重されたコントロールのすべてのバリデーターを無効にすることができます。私の編集された答え – FosterZ

+0

これは解決策ですが、もう1つ良い方法はありませんか? – Arian

0

をPage_Load(この行を追加します。この方法を行うことができます)

RequiredFieldValidator1.Enabled = panel.Enabled; 
関連する問題