参考网地址:
http://www.cnblogs.com/Roy_Cao/archive/2012/08/14/2637542.html(类)
http://blog.sina.com.cn/s/blog_542633d901008mw6.html(部署)
http://blog.sina.com.cn/s/blog_542633d901008mvf.html(继承说明)
http://hi.baidu.com/liuzhenhe/item/a9628698c0bca93e336eebb7(xml文件如何编写)
需求:定义一个文本框,defaultValue = CGC,长度不能小于等于5
步骤如下:
- 创建Sharepoint2010项目(类库)
- 添加引用(microsoft.sharepoint.dll)
- 写代码(看代码你就懂了,比较简单)及编写xml
- 部署(把dll拷贝到gac里,再把xml文件拷到C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\XML下,再重启IIS)就可以了.
cs代码如下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.SharePoint; namespace SharepointField { public class FirstField:SPFieldText { public FirstField(SPFieldCollection fields,string fieldName): base(fields, fieldName) { } public FirstField(SPFieldCollection fields, string fieldName, string displayName):base(fields,fieldName,displayName) { } public override string DefaultValue { get { return "CGC"; } } public override string GetValidatedString(object value) { if (value.ToString().Length <= 5) { throw new SPFieldValidationException("长度必须大于5"); } return base.GetValidatedString(value); } } }
xml文件(fldtypes_FirstField.xml必须fldtypes_开头)如下:
<?xml version="1.0" encoding="utf-8" ?> <FieldTypes> <FieldType> <Field Name="TypeName">FirstField</Field> <Field Name="ParentType">Text</Field> <Field Name="TypeDisplayName">FirstFieldDisplay</Field> <Field Name="TypeShortDescription">FirstFieldDesc</Field> <Field Name="UserCreatable">TRUE</Field> <Field Name="FieldTypeClass">SharepointField.FirstField,SharepointField, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b2db6aae38d37e8a</Field> </FieldType> </FieldTypes>
先做个简单的,后续继续研究...