2010-11-30 84 views
0

我正在创建一个非常简单的Web部件,它接受表单文本字段上的条目,然后执行某些操作。在这之前,我想验证文本字段的内容。它必须存在,并且它必须少于250个字符。我知道我可以编写一些自定义代码来执行此操作,但Sharepoint包含验证功能,所以为什么要重新发明轮子。验证C#中的Sharepoint 2007 Web部件表单字段

但是,经过一个小时寻找我想要实现的一些文档后,我发现很多解释了如何在编写ASP.NET代码时执行此操作,但如果在C#中编写Web部件时很少Visual Studio 2008.剩下的唯一一点是验证。

所以,我的问题是如何验证窗体上的字段。

我的字段被称为txtMessage。这里是我写的代码:

// Add the form field to the web part 
tc = new TableCell(); 
tc.VerticalAlign = VerticalAlign.Top; 
txtMessage = new TextBox(); 
txtMessage.ID = "txtFormField"; 
txtMessage.Width = Unit.Pixel(300); 
txtMessage.MaxLength = 250; 
tc.Controls.Add(txtMessage);**strong text** 

// Validate form field - required field 
RequiredFieldValidator messageRequiredValidator = new RequiredFieldValidator(); 
messageRequiredValidator.ControlToValidate = txtMessage.ID; 
messageRequiredValidator.ErrorMessage = "You must enter text"; 
messageRequiredValidator.Display = ValidatorDisplay.Dynamic; 
messageRequiredValidator.Text = "<img src=\"/_layouts/images/CNSCA16.gif\"/>"; 

// Send Message button 
tc = new TableCell(); 
btnSendMessage = new Button(); 
btnSendMessage.Text = "Send"; 
btnSendMessage.Click += new EventHandler(btnSendMessage_Click); 
tc.Controls.Add(btnSendMessage); 
tr.Controls.Add(tc); 

我真的需要知道的是如何在点击按钮时触发域的验证。我是否需要添加一个调用验证的新EventHandler,或其他?

回答

0

Doh - 现在我意识到我必须将此作为单独的控件添加到页面中。

tc.Controls.Add(messageRequiredValidator);