我已经编写了一个SharePoint2007Web部件,它需要在用户表单和Admin (EditorPart)中进行验证。
我使用InputFormRegularEdpressionValidator进行验证,如下所示:
tb = new TextBox();
tb.ID = "myID";
InputFormRegularExpressionValidator validTb = new
InputFormRegularExpressionValidator();
validTb.ControlToValidate = tb.ID;
validTb.ValidationExpression = myRegExp;
validTb.ValidationGroup = "AdminInput";
this.Controls.Add(tb);
this.Controls.Add(validTb);我定义了两个验证组--一个用于UserInput,另一个用于AdminInput。我在用户表单中定义了一个提交按钮,并将这个ValidationGroup设置为UserInput,
但是,我不知道如何将ValidationGroup AdminInput应用于“确定”和“编辑器”部分中的按钮,或者以其他方式验证这些字段。
如何触发EditorPart字段在单击Ok/应用时与面向web部件的公共字段的验证不同?
发布于 2010-12-15 19:29:33
在这种情况下,我建议使用下面链接中提供的解决方案。
How to set an error message from EditorPart when ApplyChanges returns false?
string _errorText;
public override bool ApplyChanges()
{
if (System.Text.RegularExpressions.Regex.IsMatch(validTb.Text, myRegExp))
{
//write you code here in case of valid input
return true;
}
else
{
_errorMessage = "Not A valid String";
return false;
}
}
protected override OnPreRender(EventArgs e)
{
if (!string.IsNullOrEmpty(_errorText))
{
this.Zone.ErrorText = _errorText;
}
base.OnPreRender(e);
}https://stackoverflow.com/questions/4450571
复制相似问题