Webcontrol中的验证器不会跳转Page.IsValid

时间:2010-08-09 16:01:47

标签: .net validation

我有一个dotnet页面,上面有一些输入框和一堆验证器,它工作正常。但是我决定重新设计它,以便将一些功能分解为webcontrol。

现在为了在继续之前检查验证我在按钮点击事件中使用了Page.IsValid,因为完成表单的按钮不再与输入框在同一个Web控件中。但是,即使验证器仍然适用于webcontrol本身(从同一个webcontrol的其他部分触发回发按预期方式跳过验证器),它们似乎仍然为Page.IsValid返回true,即使内容无效。 / p>

Webcontrols没有自己的IsValid属性 - 为什么验证器没有跳闸页面.IsValid了?

1 个答案:

答案 0 :(得分:0)

您是否考虑过在自定义Web控件类上使用ValidationPropertyAttribute?您可以使用它来定义某些属性需要验证。

来自MSDN:

[ValidationPropertyAttribute("Message")]
public class MessageControl : Label
{
  private int _message = 0;
  public int Message
  {
    get 
    {
      return _message;
    }
    set
    {
       _message = value;
    }
  }
}

另见http://msdn.microsoft.com/en-us/library/system.web.ui.validationpropertyattribute.aspx