【发布时间】:2011-05-19 00:55:33
【问题描述】:
我用 C# 为 Sharepoint 2007 编写了一个 Web 部件,它有一个使用 RequiredFieldValidator() 验证为必填字段的字段。 Web 部件还有一些配置字段(您可以通过单击修改共享 Web 部件来编辑这些字段)。
当我对这些字段进行更改并尝试应用它们时,即使我没有提交表单,用户字段的验证也会启动并阻止更新。我只是想提交设置。 Web 部件可能会在我们场中的一些地方使用,因此网站集管理员需要能够更改设置 - 目前这些用户这样做还不够友好。
这里是我验证用户字段的地方:
// Validate form field - required field, and max length is 100 characters.
InputFormRequiredFieldValidator messageRequiredValidator = new InputFormRequiredFieldValidator();
messageRequiredValidator.ControlToValidate = txtMessage.ID;
messageRequiredValidator.ErrorMessage = "You must write a message to send!";
messageRequiredValidator.Display = ValidatorDisplay.Dynamic;
messageRequiredValidator.Text = "<img src=\"/_layouts/images/CNSCA16.gif\"/> You must write a message to send.";
tc.Controls.Add(messageRequiredValidator);
这是我定义配置字段之一的地方:
private string recipientEmailAddress = "sender@domain.tld";
[WebBrowsable(true),
Personalizable(true),
WebPartStorage(Storage.Shared),
WebDescription("Email address the form should be sent to"),
WebDisplayName("Recipient Email Address"),
SPWebCategoryName("Email Settings")]
public string RecipientEmailAddress
{
get { return recipientEmailAddress; }
set { recipientEmailAddress = value; }
}
这是我编写的第一个 Web 部件,因此在如何进行管理员配置和验证用户提交的字段方面可能会遗漏一些细节。
【问题讨论】:
标签: sharepoint sharepoint-2007 web-parts