您的位置:首页 > 其它

一个简单的Checkbox Custom Field Type

2007-08-17 19:52 295 查看
这个字段是一个普通的Single line of text,作用就是显示一个Checkbox,checkbox 的value为这个Text字段的值。
效果图:
public class SPCheckboxField : SPFieldText
2
5<SharePoint:RenderingTemplate ID="CheckboxFieldControl" runat="server">
6 <Template>
7 <asp:TextBox ID="txtUrl" Enabled="false" MaxLength="255" runat="server" Columns="50" />
8 </Template>
9</SharePoint:RenderingTemplate>

3. 写一个对应CheckboxField.ascx 的类:

1 public class CheckboxFieldControl : BaseFieldControl
2<?xml version="1.0" encoding="utf-8"?>
2<FieldTypes>
3 <FieldType>
4 <Field Name="TypeName">CheckboxField</Field>
5 <Field Name="ParentType">Text</Field>
6 <Field Name="TypeDisplayName">Checkbox Field</Field>
7 <Field Name="TypeShortDescription">Checkbox Field</Field>
8 <Field Name="UserCreatable">TRUE</Field>
9 <Field Name="ShowInListCreate">TRUE</Field>
10 <Field Name="ShowInSurveyCreate">TRUE</Field>
11 <Field Name="ShowInDocumentLibraryCreate">TRUE</Field>
12 <Field Name="ShowInColumnTemplateCreate">TRUE</Field>
13 <Field Name="Sortable">FALSE</Field>
14 <Field Name="AllowBaseTypeRendering">TRUE</Field>
15 <Field Name="Filterable">FALSE</Field>
16 <Field Name="FieldTypeClass">CheckboxCustomField.SPCheckboxField,CheckboxCustomField,Version=1.0.0.0,Culture=neutral,PublicKeyToken=5acbdc949ff711be</Field>
17 <RenderPattern Name="DisplayPattern">
18 <Switch>
19 <Expr>
20 <Column/>
21 </Expr>
22 <Case Value="">
23 </Case>
24 <Default>
25 <HTML><![CDATA[<input type='checkbox' name='my_select' value=']]></HTML>
26 <Column HTMLEncode="TRUE"/>
27 <HTML><![CDATA[' />]]></HTML>
28 </Default>
29 </Switch>
30 </RenderPattern>
31 </FieldType>
32</FieldTypes>

都是些配置的信息,最主要显示的部分是这里:

1 <HTML><![CDATA[<input type='checkbox' name='my_select' value=']]></HTML>
2 <Column HTMLEncode="TRUE"/>
3 <HTML><![CDATA[' />]]></HTML>

5. 这样就OK了,开始部署:
1) 将编译后dll放入GAC
2) 把UC放到C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\CONTROLTEMPLATES
3) 把xml放到C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\XML
4) 重启IIS

在create column会看到我们的Checkbox Field:



红色的就是这个custom field type,蓝色的是陈曦那个。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: