点滴积累【ASP.NET】---定义一个textbox用户控件在ascx页面!在不同的aspx页面调用时动态验证

在不同页面调用用户控件textbox动态验证:

在ascx页面中定义一个textbox控件,在不同的aspx页面调用时,有些需要验证非空有些不需要验证非空如何实现:

实现思路:
1.在ascx用户控件页面,放一个非空验证的控件(RequiredFieldValidator),将启用状态设置为Enabled = false.就是不启用控件。并且给这个用户控件自定义一个属性。属性名称,类型可以自定义。

1 private string isValidation;

2         public string IsValidation

3         {

4             get { return isValidation; }

5             set { isValidation = value; }

6         }

2.在aspx页面给该属性赋值。

1 <td class="ccms_td_right" colspan="5">

2                 <uc1:ComboGrid1 ID="cgDetectionUnitName" runat="server" EnableViewState="false" isValidation="检测单位不能为空" EnabledAction="(12.*)" Class="ccms_textbox" />

3                 <input id="hiDetectionUnitName" runat="server" field="DetectionUnitName" tablename="TesterRecord"

4                     type="hidden" />

5             </td>

 


3.在ascx页面取得该属性的值,通过判断该属性的值。来确定是否需要验证。

 1 protected void Page_Load(object sender, EventArgs e)

 2         {

 3             if (!IsPostBack)

 4             {

 5                 if (isValidation != null)

 6                 {

 7                     rfvTB1.Enabled = true;

 8                     rfvTB1.ErrorMessage = isValidation;

 9                 }

10 

11             }

12         }

在这里,我自定义的属性是 IsValidation ,string类型的。
当我需要非空验证时,就给该属性赋值。赋的值为,当控件为空时的提示信息。
当不需要验证时,就不用管这个属性。

你可能感兴趣的:(asp.net)