BaseFieldControl.DisplayTemplate Property

Gets or sets an object that can be used to control the rendering of the BaseFieldControl object in display mode; that is, when it is not on a New or Edit form.

Namespace:  Microsoft.SharePoint.WebControls
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Available in Sandboxed Solutions: No

public ITemplate DisplayTemplate { get; set; }

Property Value

Type: System.Web.UI.ITemplate
An ITemplate that controls the rendering of the BaseFieldControl object.

With the default implementation, if DisplayTemplate has not been explicitly set but DisplayTemplateName is not a null reference (Nothing in Visual Basic), DisplayTemplate returns the ITemplate that is named by DisplayTemplateName. But if DisplayTemplate has been set, its default get accessor ignores the value of DisplayTemplateName.

Notes to Inheritors

With their default implementations, it is possible for DisplayTemplate to be set to a template other than the one that is named by DisplayTemplateName. Hence, with the default implementations, when your code sets DisplayTemplate, it should also set DisplayTemplateName to the name of the same ITemplate. Similarly, when your code sets DisplayTemplateName, it should also set DisplayTemplate to the same ITemplate. If you do not enforce logical consistency in this way and the two properties have inconsistent values at render time, DisplayTemplate determines the template that is used for rendering the field.

If you decide to use a template for rendering in Display mode, you can have your override of the get accessor of ControlTemplate return DisplayTemplate when the control mode is Display. Alternatively, your override of CreateChildControls can set TemplateName to DisplayTemplateName when the control mode is Display.