Поделиться через


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 объект, отображающий два поля в одной ячейке. Поля имени и фамилии объединяются в один 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

Возвращает или задает текст, отображающийся как значение свойство AbbreviatedText некоторых элементов управления.

(Унаследовано от DataControlField)
AlternatingItemTemplate

Получает или задает шаблон для отображения в объекте TemplateField элемента, претерпевающего изменения.

Control

Возвращает ссылку на элемент управления данными, с которым связан объект DataControlField.

(Унаследовано от DataControlField)
ControlStyle

Получает стиль любых серверных веб-элементов управления, содержащихся в объекте DataControlField.

(Унаследовано от DataControlField)
ConvertEmptyStringToNull

Возвращает или задает значение, указывающее на необходимость преобразования значения, к которому привязан объект TemplateField в null, если его значение равно Empty.

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)

Получает значение полей элемента управления данными, как указано односторонним или обоюдным оператором привязки (DataBind)из текущей ячейки таблицы и добавляет значения в указанную коллекцию IOrderedDictionary.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
Initialize(Boolean, Control)

Производит базовую инициализацию экземпляра для поля элемента управления данными.

(Унаследовано от DataControlField)
InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32)

Добавляет в коллекцию ячейки элемента управления текст или элементы управления.

LoadViewState(Object)

Восстанавливает сохраненное раннее состояние представления источника данных.

(Унаследовано от DataControlField)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
OnFieldChanged()

Вызывает событие FieldChanged.

(Унаследовано от DataControlField)
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)

Применяется к

См. также раздел