1
我正在使用一个向导控件,其中有一个导致validation = true的下一个按钮。我也有一个复选框,当事件处理程序发生更改时,我设置下一个按钮的validation = false。点击该按钮时 - 我收到以下内容:解决方案:在验证发生之前无法调用Page.IsValid
Page.IsValid无法在验证发生前调用。应该在具有CausesValidation的控件的事件处理程序中查询。
下面是代码:
protected void chk_CheckChanged(object sender, EventArgs e)
{
CheckBox chk = (CheckBox)sender;
ImageButton ibtnStepNext = (ImageButton)(this.WizardSummaryTemplate.CustomNavigationTemplateContainer.FindControl("StepNextButton"));
ibtnStepNext.CausesValidation = (!chk.Checked);
}
什么是推荐的解决方案,以禁用验证下一个按钮,所以我没有看到这个错误?
您是否明确调用了'Page.IsValid'? – 2011-03-18 16:08:53
并从哪里? – Olaf 2011-03-18 16:18:25
是的 - 但是,在Page.IsValid之前调用Page.Validate()并不能解决我的问题。在此错误之前,不会执行调用Page.Validate()或Page.IsValid的方法。它发生在复选框检查改变后的事件的最初发布后。 – FiveTools 2011-03-18 17:19:01