See Also: TemplateField Members
The System.Web.UI.WebControls.TemplateField class is used by data-bound controls (such as System.Web.UI.WebControls.GridView and System.Web.UI.WebControls.DetailsView) to display custom content for each record displayed. When you need to display content in a data-bound control that is not provided by one of the predefined data control fields (such as System.Web.UI.WebControls.BoundField), use the System.Web.UI.WebControls.TemplateField class to create your custom user interface (UI). The System.Web.UI.WebControls.TemplateField object is displayed differently depending on the data-bound control in which it is used. For example, the System.Web.UI.WebControls.GridView control displays a System.Web.UI.WebControls.TemplateField object as a column, and the System.Web.UI.WebControls.DetailsView control displays it as a row.
You can define a custom template for the different parts of the System.Web.UI.WebControls.TemplateField object using the templates listed in the following table.
TemplateField.AlternatingItemTemplate |
Specifies the content to display for the alternating items in a System.Web.UI.WebControls.TemplateField object. |
TemplateField.EditItemTemplate |
Specifies the content to display for an item in edit mode in a System.Web.UI.WebControls.TemplateField object. |
TemplateField.FooterTemplate |
Specifies the content to display for the footer section of a System.Web.UI.WebControls.TemplateField object. |
TemplateField.HeaderTemplate |
Specifies the content to display for the header section of a System.Web.UI.WebControls.TemplateField object. |
TemplateField.InsertItemTemplate |
Specifies the content to display for an item in insert mode in a System.Web.UI.WebControls.TemplateField object. This template is supported only by the System.Web.UI.WebControls.DetailsView control. |
TemplateField.ItemTemplate |
Specifies the content to display for the items in a System.Web.UI.WebControls.TemplateField object. |
You can hide a System.Web.UI.WebControls.TemplateField object in a data-bound control by setting the DataControlField.Visible property to false.
As an alternative to defining a custom TemplateField.HeaderTemplate or TemplateField.FooterTemplate template, you can customize the header and footer sections of a System.Web.UI.WebControls.TemplateField object by setting other properties of the System.Web.UI.WebControls.TemplateField object. To display a caption in the header or footer sections, set the DataControlField.HeaderText or the DataControlField.FooterText property, respectively. Instead of displaying text in the header section, you can display an image by setting the DataControlField.HeaderImageUrl property. The header section can be hidden in the System.Web.UI.WebControls.TemplateField object by setting the DataControlField.ShowHeader property to false.
Some data-bound controls (such as the System.Web.UI.WebControls.GridView control) can show or hide only the entire header section of the control. These data-bound controls do not support the DataControlField.ShowHeader property for an individual bound field. To show or hide the entire header section of a data-bound control, use the control's ShowHeader property (if available).
You also can customize the appearance of the System.Web.UI.WebControls.TemplateField object (font color, background color, and so on) by setting the style properties for the different parts of the field. The following table lists the different style properties.
DataControlField.ControlStyle |
The style settings for the child Web server controls of the System.Web.UI.WebControls.TemplateField object. |
DataControlField.FooterStyle |
The style settings for the footer section of the System.Web.UI.WebControls.TemplateField object. |
DataControlField.HeaderStyle |
The style settings for the header section of the System.Web.UI.WebControls.TemplateField object. |
DataControlField.ItemStyle |
The style settings for the data items in the System.Web.UI.WebControls.TemplateField object. |