Field 元素 (字段类型)

适用于: SharePoint 2016 |SharePoint Foundation 2013 |SharePoint Online |SharePoint Server 2013

表示字段类型的特征。

<Field Name="Text"></Field>

元素和属性

下面各部分介绍了属性、子元素和父元素。

Attributes

属性 说明
Name 必需 文本。 一个字符串,表示字段类型(由 Field 元素表示)的特定方面的名称。 该值必须是 “备注”下表中列出的字符串之一。

子元素

父元素

备注

FieldType 元素的 Field 元素子级在 %ProgramFiles%\Common Files\Microsoft Shared\web 服务器扩展\15\TEMPLATE\XML 中的 fldtypes*.xml 文件中配置。

每个 FieldType 元素都具有几个必需的和可选的 Field 元素,这些元素将按照 Name 属性来区分。 下表说明了这些元素。 在对象模型中,字段类型由 SPFieldTypeDefinition 类表示。 后一个类具有一个只读属性,该属性对应于除表的两行之外的所有行, (异常是 InternalTypeSQLType) 。 )除非另有说明,否则属性名称与相应的 Name 属性的值匹配。

Field 元素属性 Name 的值 说明
AllowBaseTypeRendering 可选属性,类型为 Boolean。 默认值为 FALSE。 指定在客户端应用程序无法确定如何正确呈现自定义字段类型的情况下,客户端应用程序是否将该字段呈现为其基本类型(也称作 ParentType)。 如果设置为 TRUE,并且客户端应用程序无法正确呈现自定义字段类型,则客户端应用程序会将该字段呈现为其继承的默认 SharePoint Foundation 父字段类型。
CAMLRendering 可选属性,类型为 Boolean。 默认值为 FALSE。 指定是否在父 FieldType 元素内其他位置的 RenderPattern 元素中使用 CAML 标记在列表视图中呈现字段。 默认 FALSE 表示字段通过 fldtypes*.xsl 文件中的 XSL 转换在列表视图上呈现,这是列表视图上字段呈现的标准系统。 (但是,此元素对“显示”、“新建”和“编辑”窗体上的字段呈现没有影响。 RenderPattern 仍然是在“显示”窗体上呈现字段的标准方式。)
FieldTypeClass 可选 字符串但对于所有自定义字段类型是必需的。 表示字段类型类库的强名称。 FieldTypeClass 包含具有 VersionCulturePublicKeyToken 的类名称和程序集名称;例如:
<Field Name="FieldTypeClass">CustomFieldTypes.RegularExpression.RegularExpressionField, CustomFieldTypes.RegularExpression, Version=1.0.0.0, Culture=neutral, PublicKeyToken=57e55365ec0ce80a</Field>

对于 SharePoint Foundation 中内置的字段类型,仅包含完全限定的类名。
FieldEditorUserControl 可选 字符串。 表示 field_type FieldEditor.ascx 文件的相对路径,该文件定义一个控件,该控件显示在“新建网站栏”页上的“其他列设置”部分中的 SharePoint Foundation 中。 利用此控件,栏创建者可以为特定栏设置字段类型的变量属性。

例如:
"/_controltemplates/RegularExpressionFieldEditor.ascx".

<Field Name="FieldEditorUserControl">如果没有元素,则字段类型的特殊属性由 PropertySchema 元素呈现 (字段类型) 元素。

FieldEditorUserControl 应为不可本地化的固定字符串。
Filterable 必需属性,类型为 Boolean。 表示是否可根据使用了某个字段类型的栏中的值对包含基于此字段类型的栏的列表进行筛选。 如果设置为 TRUE,则栏的标题将成为一个可供用户用来筛选列表的控件。
InternalType 可选属性,类型为 String。 表示一个内部基本类型。 不要在自定义字段类型定义中使用 <Field Name="InternalType"> 元素。
ParentType 必需属性,类型为 String(但可能是一个空的字符串)。 表示从中派生字段类的类型的名称。 可能的值与 Field 元素的 Type 属性 (List) 元素的可能值完全相同。 如果字段类型不是派生自其他类型,则值为空字符串:
<Field Name="ParentType"> </Field>. 在自定义字段类型中,它不得为空。 所有自定义类型都继承自另一种类型。

在 SharePoint Foundation 对象模型中, ParentType 称为 BaseRenderingTypeName
ShowOnListAuthoringPages 可选属性,类型为 Boolean。 默认值为 TRUE。 表示是否在列表中显示此字段类型。 如果设置为 TRUE,SharePoint Foundation 会在列表创作页上显示此字段类型,以便用户可以在其列表中包括字段类型。

在 SharePoint Foundation 对象模型中, ShowOnListAuthoringPages 称为 ShowOnListCreate
ShowOnDocumentLibraryAuthoringPages 可选属性,类型为 Boolean。 默认值为 TRUE。 表示是否显示此字段类型以包含在文档库中。 如果设置为 TRUE,SharePoint Foundation 会在文档库创作页上显示此字段类型,以便用户可以在其文档库中包括字段类型。

在 SharePoint Foundation 对象模型中, ShowOnDocumentLibraryAuthoringPages 称为 ShowOnDocumentLibraryCreate
ShowOnSurveyAuthoringPages 可选属性,类型为 Boolean。 默认值为 TRUE。 表示是否在调查中显示此字段类型。 如果设置为 TRUE,SharePoint Foundation 会在调查创作页上显示此字段类型,以便用户可以在其调查中包含字段类型。

在 SharePoint Foundation 对象模型中, ShowOnSurveyAuthoringPages 称为 ShowOnSurveyCreate
ShowOnColumnTemplateAuthoringPages 可选属性,类型为 Boolean。 默认值为 TRUE。 表示是否应将此字段类型显示为列模板字段类型。 如果设置为 TRUE,SharePoint Foundation 会在列模板创作页上显示此字段类型,以便用户可以选择创建此字段类型的列模板。

在 SharePoint Foundation 对象模型中, ShowOnColumnTemplateAuthoringPages 称为 ShowOnColumnTemplateCreate
SQLType 可选 字符串。 表示用于在内容数据库中存储数据的 SQL 数据类型。 不要在自定义字段类型定义中使用 <Field Name="SQLType"> 元素。
可排序 必需属性,类型为 Boolean。 表示是否可根据使用了此类型的栏对包含基于此字段类型的栏的列表进行排序。 如果设置为 TRUE,则栏的标题将成为一个可供用户用来对列表进行排序的控件。
TypeDisplayName 必需的 字符串 。 表示字段类型在用户界面 (UI) 中的显示名称。 在 SharePoint Foundation 中,它显示在“自定义[列表]”页上的“类型”列中, (listit.aspx) 。 如果 TypeShortDescription 不存在,则还会使用它来代替 TypeShortDescription

TypeDisplayName 应是可本地化的字符串。
TypeName 必需的 字符串 。 表示字段类型的名称。 它在 SharePoint 服务器场中的所有字段类型名称中必须是唯一的。

TypeName 应是固定的、不可本地化的字符串。
TypeShortDescription 可选属性,类型为 String。 表示在用户界面中显示的字段类型的简短描述。 在 SharePoint Foundation 中,它以单选按钮显示在“新建网站栏”和“创建栏”页的“名称”和“类型”部分,以及“网站栏库”的“类型”列中。 <Field Name="TypeShortDescription">如果没有元素,则使用 TypeDisplayName

TypeShortDescription 应是可本地化的字符串。
UserCreatable 可选属性,类型为 Boolean。 默认值为 TRUE,使用户能够将此字段类型的字段添加到列表。 将值设置为 FALSE 允许在列表架构中使用字段类型,但对“新建网站栏”和“创建列”页的“名称”和“类型”部分的用户隐藏字段类型。

示例

以下示例定义一个自定义字段类型。

重要

RenderPattern 已过时。 此处显示它只是为了帮助调试最初针对早期版本的 SharePoint Foundation 开发的自定义字段。

<FieldType>
  <Field Name="TypeName">SocialSecurityNumber</Field>
  <Field Name="ParentType">Text</Field>
  <Field Name="TypeDisplayName">Social Security Number</Field>
  <Field Name="TypeShortDescription">Social Security Number (123456789, 123-45-6789)</Field>
  <Field Name="AllowBaseTypeRendering">TRUE</Field>
  <Field Name="FieldTypeClass">
    AdventureWorks.FieldTypes.SPFieldSSN, AdventureWorks.FieldTypes.SPFieldSSN,
    Version=1.0.0.0,Culture=neutral,PublicKeyToken=90734cc53324b79c
  </Field>
  <RenderPattern Name="DisplayPattern">
    <Column HTMLEncode="TRUE" />
    <Column HTMLEncode="TRUE" UseRelatedField="TRUE"/>
  </RenderPattern>
</FieldType>

另请参阅