TemplateField Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет поле, отображающее настраиваемое содержимое в элементе управления с привязкой к данным.
public ref class TemplateField : System::Web::UI::WebControls::DataControlField
public class TemplateField : System.Web.UI.WebControls.DataControlField
type TemplateField = class
inherit DataControlField
Public Class TemplateField
Inherits DataControlField
- Наследование
Примеры
В следующем примере кода показано, как создать пользовательский TemplateField объект, отображающий два поля в одной ячейке. Поля имени и фамилии объединяются в один TemplateField объект.
<%@ Page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TemplateField Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TemplateField Example</h3>
<!-- Populate the Columns collection declaratively. -->
<!-- Create a custom TemplateField column that uses -->
<!-- two Label controls to display an author's first and -->
<!-- last name in the same column. -->
<asp:gridview id="AuthorsGridView"
datasourceid="AuthorsSqlDataSource"
autogeneratecolumns="False"
runat="server">
<columns>
<asp:templatefield headertext="Author Name">
<itemtemplate>
<asp:label id="FirstNameLabel"
Text= '<%# Eval("au_fname") %>'
runat="server"/>
<asp:label id="LastNameLabel"
Text= '<%# Eval("au_lname") %>'
runat="server"/>
</itemtemplate>
</asp:templatefield>
</columns>
</asp:gridview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Pubs sample database. -->
<asp:sqldatasource id="AuthorsSqlDataSource"
selectcommand="SELECT [au_lname], [au_fname], [address], [city], [state], [zip], [contract] FROM [authors]"
connectionstring="server=localhost;database=pubs;integrated security=SSPI"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
<%@ Page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TemplateField Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TemplateField Example</h3>
<!-- Populate the Columns collection declaratively. -->
<!-- Create a custom TemplateField column that uses -->
<!-- two Label controls to display an author's first and -->
<!-- last name in the same column. -->
<asp:gridview id="AuthorsGridView"
datasourceid="AuthorsSqlDataSource"
autogeneratecolumns="False"
runat="server">
<columns>
<asp:templatefield headertext="Author Name">
<itemtemplate>
<asp:label id="FirstNameLabel"
text= '<%# Eval("au_fname") %>'
runat="server"/>
<asp:label id="LastNameLabel"
text= '<%# Eval("au_lname") %>'
runat="server"/>
</itemtemplate>
</asp:templatefield>
</columns>
</asp:gridview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Pubs sample database. -->
<asp:sqldatasource id="AuthorsSqlDataSource"
selectcommand="SELECT [au_lname], [au_fname], [address], [city], [state], [zip], [contract] FROM [authors]"
connectionstring="server=localhost;database=pubs;integrated security=SSPI"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
Комментарии
Класс TemplateField используется элементами управления с привязкой к данным (такими как GridView и DetailsView) для отображения пользовательского содержимого для каждой отображаемой записи. Если необходимо отобразить содержимое в элементе управления с привязкой к данным, который не предоставляется одним из стандартных полей элемента управления данными (например, BoundField), используйте TemplateField класс для создания пользовательского интерфейса. Объект TemplateField отображается по-разному в зависимости от элемента управления с привязкой к данным, в котором он используется. Например, GridView элемент управления отображает объект в TemplateField виде столбца, а DetailsView элемент управления — в виде строки.
Можно определить пользовательский шаблон для различных частей TemplateField объекта с помощью шаблонов, перечисленных в следующей таблице.
| Шаблон | Описание |
|---|---|
| AlternatingItemTemplate | Указывает содержимое, отображаемое для чередующихся элементов в объекте TemplateField . |
| EditItemTemplate | Указывает содержимое, отображаемое для элемента в режиме редактирования в объекте TemplateField . |
| FooterTemplate | Указывает содержимое, отображаемое для раздела нижнего TemplateField колонтитула объекта . |
| HeaderTemplate | Указывает содержимое, отображаемое для раздела заголовка TemplateField объекта . |
| InsertItemTemplate | Указывает содержимое, отображаемое для элемента в режиме вставки в объекте TemplateField . Этот шаблон поддерживается только элементом DetailsView управления . |
| ItemTemplate | Указывает содержимое, отображаемое для элементов в объекте TemplateField . |
Вы можете скрыть TemplateField объект в элементе управления с привязкой к данным, задав Visible для свойства значение false.
В качестве альтернативы определению пользовательского HeaderTemplate или FooterTemplate шаблона можно настроить разделы верхнего и нижнего TemplateField колонтитулов объекта, задав другие свойства TemplateField объекта. Чтобы отобразить подпись в разделах верхнего или нижнего FooterText колонтитула, задайте HeaderText свойство или соответственно. Вместо отображения текста в разделе верхнего колонтитула можно отобразить изображение, задав HeaderImageUrl свойство . Раздел заголовка можно скрыть в объекте , TemplateField задав для свойства значение ShowHeaderfalse.
Примечание
Некоторые элементы управления с привязкой к данным (например GridView , элемент управления) могут отображать или скрывать только весь раздел заголовка элемента управления. Эти элементы управления с привязкой к данным не поддерживают ShowHeader свойство для отдельного привязанного поля. Чтобы отобразить или скрыть весь раздел заголовка элемента управления с привязкой к данным, используйте свойство элемента управления ShowHeader (если доступно).
Вы также можете настроить внешний вид объекта (цвет шрифта TemplateField , цвет фона и т. д.), задав свойства стиля для различных частей поля. В следующей таблице перечислены различные свойства стиля.
| Свойство Style | Описание |
|---|---|
| ControlStyle | Параметры стиля для дочерних элементов управления TemplateField веб-сервера объекта . |
| FooterStyle | Параметры стиля для раздела нижнего TemplateField колонтитула объекта . |
| HeaderStyle | Параметры стиля для раздела TemplateField верхнего колонтитула объекта. |
| ItemStyle | Параметры стиля для элементов данных в объекте TemplateField . |
Конструкторы
| TemplateField() |
Инициализирует новый экземпляр класса TemplateField. |
Свойства
| AccessibleHeaderText |
Возвращает или задает текст, отображающийся как значение свойство |
| AlternatingItemTemplate |
Получает или задает шаблон для отображения в объекте TemplateField элемента, претерпевающего изменения. |
| Control |
Возвращает ссылку на элемент управления данными, с которым связан объект DataControlField. (Унаследовано от DataControlField) |
| ControlStyle |
Получает стиль любых серверных веб-элементов управления, содержащихся в объекте DataControlField. (Унаследовано от DataControlField) |
| ConvertEmptyStringToNull |
Возвращает или задает значение, указывающее на необходимость преобразования значения, к которому привязан объект TemplateField в |
| DesignMode |
Возвращает значение, указывающее, просматривается ли в данный момент поле элемента управления данными в среде режима разработки. (Унаследовано от DataControlField) |
| EditItemTemplate |
Получает или задает шаблон для отображения элемента в режиме правки в объекте TemplateField. |
| FooterStyle |
Возвращает или задает стиль нижнего колонтитула поля элемента управления данными. (Унаследовано от DataControlField) |
| FooterTemplate |
Получает или задает шаблон для отображения нижнего колонтитула объекта TemplateField. |
| FooterText |
Возвращает или задает текст для отображения в нижнем колонтитуле поля элемента управления данными. (Унаследовано от DataControlField) |
| HeaderImageUrl |
Возвращает или задает URL -адрес изображения для отображения в верхнем колонтитуле поля элемента управления данными. (Унаследовано от DataControlField) |
| HeaderStyle |
Возвращает или задает стиль верхнего колонтитула поля элемента управления данными. (Унаследовано от DataControlField) |
| HeaderTemplate |
Получает или задает шаблон для отображения верхнего колонтитула объекта TemplateField. |
| HeaderText |
Возвращает или задает текст для отображения в верхнем колонтитуле поля элемента управления данными. (Унаследовано от DataControlField) |
| InsertItemTemplate |
Получает или задает шаблон для отображения элемента в режиме вставки в объекте TemplateField. |
| InsertVisible |
Возвращает значение, указывающее состояние отображения объекта DataControlField во время пребывания его родительского элемента управления, привязанного к данным, в режиме вставки. (Унаследовано от DataControlField) |
| IsTrackingViewState |
Получает значение, указывающее сохраняет ли объект DataControlField изменения в данных о состоянии представления. (Унаследовано от DataControlField) |
| ItemStyle |
Возвращает стиль любого текстового содержимого, отображаемого полем элемента управления содержанием. (Унаследовано от DataControlField) |
| ItemTemplate |
Получает или задает шаблон для отображения элемента в элементе управления, привязанному к данным. |
| ShowHeader |
Возвращает или задает значение, указывающее на необходимость отображения верхнего колонтитула для поля элемента управления данными. (Унаследовано от DataControlField) |
| SortExpression |
Возвращает или задает выражение сортировки, используемое элементом управления источником данных для сортировки данных. (Унаследовано от DataControlField) |
| ValidateRequestMode |
Получает или задает значение, указывающее, проверяет ли элемент управления клиентский ввод. |
| ValidateRequestMode |
Получает или задает значение, указывающее, проверяет ли элемент управления клиентский ввод. (Унаследовано от DataControlField) |
| ViewState |
Возвращает словарь сведений о состоянии, позволяющих сохранять и восстанавливать состояние представления объекта DataControlField при нескольких запросах одной и той же страницы. (Унаследовано от DataControlField) |
| Visible |
Возвращает или задает значение, определяющее, отображается ли поле элемента управления данными. (Унаследовано от DataControlField) |
Методы
| CloneField() |
Создает точную копию текущего объекта, производного от DataControlField. (Унаследовано от DataControlField) |
| CopyProperties(DataControlField) |
Копирует свойства текущего объекта, производного от TemplateField в указанный объект DataControlField. |
| CreateField() |
Создает новый объект TemplateField. |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| ExtractValuesFromCell(IOrderedDictionary, DataControlFieldCell, DataControlRowState, Boolean) |
Получает значение полей элемента управления данными, как указано односторонним или обоюдным оператором привязки ( |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
| Initialize(Boolean, Control) |
Производит базовую инициализацию экземпляра для поля элемента управления данными. (Унаследовано от DataControlField) |
| InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32) |
Добавляет в коллекцию ячейки элемента управления текст или элементы управления. |
| LoadViewState(Object) |
Восстанавливает сохраненное раннее состояние представления источника данных. (Унаследовано от DataControlField) |
| MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
| OnFieldChanged() |
Вызывает событие |
| SaveViewState() |
Сохраняет изменения в состояние объекта DataControlField после того, как страница отправлена на сервер. (Унаследовано от DataControlField) |
| ToString() |
Возврат строки, представляющей объект DataControlField. (Унаследовано от DataControlField) |
| TrackViewState() |
Инициирует отслеживание объектом DataControlField изменений в состоянии его представления, благодаря чему эти изменения можно сохранить в свойстве элемента ViewState элемента управления и хранить их для всех запросов одной и той же страницы. (Унаследовано от DataControlField) |
| ValidateSupportsCallback() |
Определяет поддержку ответов страницы элементами управления, содержащимися в объекте TemplateField. |
Явные реализации интерфейса
| IDataSourceViewSchemaAccessor.DataSourceViewSchema |
Возвращает или задает схему, связанную с этим объектом DataControlField. (Унаследовано от DataControlField) |
| IStateManager.IsTrackingViewState |
Получает значение, указывающее сохраняет ли объект DataControlField изменения в данных о состоянии представления. (Унаследовано от DataControlField) |
| IStateManager.LoadViewState(Object) |
Восстанавливает сохраненное раннее состояние представления поля источника данных. (Унаследовано от DataControlField) |
| IStateManager.SaveViewState() |
Сохраняет изменения в состояние объекта DataControlField после того, как страница отправлена на сервер. (Унаследовано от DataControlField) |
| IStateManager.TrackViewState() |
Инициирует отслеживание объектом DataControlField изменений в состоянии его представления, благодаря чему эти изменения можно сохранить в свойстве элемента ViewState элемента управления и хранить их для всех запросов одной и той же страницы. (Унаследовано от DataControlField) |