2013-03-01 47 views
0

我從後面的代碼中顯示requiredfieldvalidator的錯誤消息,但顯示設置爲無或隱藏可見。我試圖做.visible = true,但它仍然隱藏。我怎樣才能讓它顯示錯誤信息?該文本框位於GridView中。從代碼背後啓用RequiredFieldValidator

<asp:TemplateField HeaderText="SSN"> 
    <ItemTemplate> 
    <asp:TextBox ID="txtSSN" runat="server"></asp:TextBox> 
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txtSSN" /> 
    </ItemTemplate> 
</asp:TemplateField> 

TextBox txtSSN = (TextBox)r.FindControl("txtSSN"); 
if (txtSSN.Text == "") 
     { 
     RequiredFieldValidator RequiredFieldValidator1 = (RequiredFieldValidator)r.FindControl("RequiredFieldValidator1"); 
     RequiredFieldValidator1.Visible = true; 
     RequiredFieldValidator1.Enabled = true; 
     RequiredFieldValidator1.ErrorMessage = "This field is required."; 
     } 

回答

4

IsValid屬性設置爲false

RequiredFieldValidator1.IsValid = false; 

你不應該需要打擾知名度,這將自動發生。

2

驗證器示出了本身當驗證是無效的,所以經由Validator.Validate()觸發它:

在相關聯的輸入控制執行驗證,並更新IsValid屬性。