字段控件和控件模板

上次修改时间: 2010年4月6日

适用范围: SharePoint Server 2010

除了 Web 部件以外,Microsoft SharePoint Server 2010 中的页面还可以包含字段控件。字段控件是您可以创建的 简单控件。它们用少量的代码来显示控件的两种模式:一种用于呈现,一种用于编辑。

SharePoint Foundation 和 SharePoint Server 2010 提供了几种您可以在页面中使用的默认字段控件。您在 SharePoint Server 2010 网站中使用的所有字段控件都派生自 SharePoint Foundation 中的名为 FormComponent 的基类。您可以扩展其中任何一个默认的 SharePoint Foundation 和 SharePoint Server 2010 控件以实现您自己的特定功能。

可以通过从 BaseRichField 类派生来编写自己的字段控件,也可以编写从默认字段控件派生的字段控件。

控件模板 是一项 功能,将数据与外观相分离。模板定义控件的外观,网站中包含的所有字段控件都使用模板来定义布局。

作为开发人员,您可以执行以下操作:

  • 创建和部署控件模板。

  • 部署模板以替代默认控件模板。

  • 部署模板之后对其进行编辑。

控件模板定义类似于字段类型定义,且遵循相同的扩展性和部署模型。

所有自定义模板都要添加到 NewTemplates.ascx 文件。可以使用以下三种方式之一定义自定义字段控件的控件模板:

  • 通过使用对象模型中的 GetControlTemplate 方法以编程方式设置控件的控件模板。

  • 设置页面上字段控件实例中的 TemplateName 属性或 AlternateTemplateName 属性。

  • 不是定义模板文件并在控件中引用它,而是在控件本身的标记中定义模板。这项技术主要用于没有权限安装新模板但还要自定义控件外观的 Web 设计人员。

由于当前配置了 SharePoint Server 2010,因此在运行时网站按以下顺序使用模板,具体取决于这些模板是如何定义的:标记,TemplateName 属性,然后是 GetControlTemplate 方法。但是,通过重写 GetControlTemplate 方法,模板设计人员可以修改这种行为。所有从 FormComponent 基类派生的控件都可以重写 GetControlTemplate 方法来定义控件如何选择要使用的模板。然后控件的所有实例都使用这个模板逻辑。

请参阅

概念

页面布局和母版页

其他资源

母版页