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 繫結控制項會使用 類別 (,例如 GridViewDetailsView) ,以顯示所顯示每個記錄的自訂內容。 當您需要在未由其中一個預先定義的資料控制項欄位提供的資料繫結控制項中顯示內容時, (例如 BoundField) ,請使用 TemplateField 類別來建立自訂使用者介面, (UI) 。 根據所使用的資料繫結控制項,物件 TemplateField 會以不同的方式顯示。 例如, GridView 控制項會將物件顯示為 TemplateField 資料行,而控制項則會 DetailsView 將其顯示為數據列。

您可以使用下表所列的 TemplateField 範本,為物件的不同部分定義自訂範本。

[範本] 說明
AlternatingItemTemplate 指定要在 物件中 TemplateField 替代專案顯示的內容。
EditItemTemplate 指定要在 物件中編輯模式中 TemplateField 顯示專案的內容。
FooterTemplate 指定要顯示物件頁尾區段 TemplateField 的內容。
HeaderTemplate 指定要顯示物件之標頭區段 TemplateField 的內容。
InsertItemTemplate 指定要在 物件中插入模式中 TemplateField 顯示專案的內容。 只有 DetailsView 控制項才支援此範本。
ItemTemplate 指定要顯示物件中 TemplateField 專案的內容。

您可以將 屬性設定 Visiblefalse ,以隱藏 TemplateField 資料繫結控制項中的 物件。

除了定義自訂 HeaderTemplateFooterTemplate 範本之外,您可以藉由設定 物件的其他屬性 TemplateField 來自訂 物件的頁首和頁尾區段 TemplateField 。 若要在頁首或頁尾區段中顯示標題,請分別設定 HeaderTextFooterText 屬性。 您可以藉由設定 HeaderImageUrl 屬性來顯示影像,而不是在標頭區段中顯示文字。 您可以將 屬性設定 ShowHeaderfalse ,以隱藏 物件中的 TemplateField 標頭區段。

注意

某些資料繫結控制項 (,例如 GridView 控制項) 只能顯示或隱藏控制項的整個標頭區段。 這些資料繫結控制項不支援 ShowHeader 個別綁定欄位的 屬性。 若要顯示或隱藏資料繫結控制項的整個標頭區段,請使用控制項的 屬性,如果有) ,請使用控制項 ShowHeader 的屬性 (。

您也可以藉由設定欄位不同部分的 TemplateField 樣式屬性,自訂物件的外觀 (字型色彩、背景色彩等等) 。 下表列出不同的樣式屬性。

Style 屬性 描述
ControlStyle 物件的子 Web 服務器控制項樣式 TemplateField 設定。
FooterStyle 物件的頁尾區段樣式 TemplateField 設定。
HeaderStyle 物件的標頭區段樣式 TemplateField 設定。
ItemStyle 物件中資料項目的 TemplateField 樣式設定。

建構函式

TemplateField()

初始化 TemplateField 類別的新執行個體。

屬性

AccessibleHeaderText

取得或設定在部分控制項中呈現為 AbbreviatedText 屬性值的文字。

(繼承來源 DataControlField)
AlternatingItemTemplate

取得或設定顯示 TemplateField 物件中替代項目的樣板。

Control

取得與 DataControlField 物件關聯之資料控制項的參考。

(繼承來源 DataControlField)
ControlStyle

取得 DataControlField 物件內含之任何 Web 伺服器控制項的樣式。

(繼承來源 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)

適用於

另請參閱