TemplateField 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示顯示資料繫結控制項中自訂內容的欄位。
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 類別來建立自訂使用者介面, (UI) 。 根據所使用的資料繫結控制項,物件 TemplateField 會以不同的方式顯示。 例如, GridView 控制項會將物件顯示為 TemplateField 資料行,而控制項則會 DetailsView 將其顯示為數據列。
您可以使用下表所列的 TemplateField 範本,為物件的不同部分定義自訂範本。
[範本] | 說明 |
---|---|
AlternatingItemTemplate | 指定要在 物件中 TemplateField 替代專案顯示的內容。 |
EditItemTemplate | 指定要在 物件中編輯模式中 TemplateField 顯示專案的內容。 |
FooterTemplate | 指定要顯示物件頁尾區段 TemplateField 的內容。 |
HeaderTemplate | 指定要顯示物件之標頭區段 TemplateField 的內容。 |
InsertItemTemplate | 指定要在 物件中插入模式中 TemplateField 顯示專案的內容。 只有 DetailsView 控制項才支援此範本。 |
ItemTemplate | 指定要顯示物件中 TemplateField 專案的內容。 |
您可以將 屬性設定 Visible 為 false
,以隱藏 TemplateField 資料繫結控制項中的 物件。
除了定義自訂 HeaderTemplate 或 FooterTemplate 範本之外,您可以藉由設定 物件的其他屬性 TemplateField 來自訂 物件的頁首和頁尾區段 TemplateField 。 若要在頁首或頁尾區段中顯示標題,請分別設定 HeaderText 或 FooterText 屬性。 您可以藉由設定 HeaderImageUrl 屬性來顯示影像,而不是在標頭區段中顯示文字。 您可以將 屬性設定 ShowHeader 為 false
,以隱藏 物件中的 TemplateField 標頭區段。
注意
某些資料繫結控制項 (,例如 GridView 控制項) 只能顯示或隱藏控制項的整個標頭區段。 這些資料繫結控制項不支援 ShowHeader 個別綁定欄位的 屬性。 若要顯示或隱藏資料繫結控制項的整個標頭區段,請使用控制項的 屬性,如果有) ,請使用控制項 ShowHeader
的屬性 (。
您也可以藉由設定欄位不同部分的 TemplateField 樣式屬性,自訂物件的外觀 (字型色彩、背景色彩等等) 。 下表列出不同的樣式屬性。
Style 屬性 | 描述 |
---|---|
ControlStyle | 物件的子 Web 服務器控制項樣式 TemplateField 設定。 |
FooterStyle | 物件的頁尾區段樣式 TemplateField 設定。 |
HeaderStyle | 物件的標頭區段樣式 TemplateField 設定。 |
ItemStyle | 物件中資料項目的 TemplateField 樣式設定。 |
建構函式
TemplateField() |
初始化 TemplateField 類別的新執行個體。 |
屬性
AccessibleHeaderText |
取得或設定在部分控制項中呈現為 |
AlternatingItemTemplate |
取得或設定顯示 TemplateField 物件中替代項目的樣板。 |
Control |
取得與 DataControlField 物件關聯之資料控制項的參考。 (繼承來源 DataControlField) |
ControlStyle |
取得 DataControlField 物件內含之任何 Web 伺服器控制項的樣式。 (繼承來源 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) |
方法
明確介面實作
IDataSourceViewSchemaAccessor.DataSourceViewSchema |
取得或設定與此 DataControlField 物件相關聯的結構描述。 (繼承來源 DataControlField) |
IStateManager.IsTrackingViewState |
取得值,指出 DataControlField 物件是否正在將變更儲存到它的檢視狀態。 (繼承來源 DataControlField) |
IStateManager.LoadViewState(Object) |
將資料控制項欄位還原成先前儲存的檢視狀態。 (繼承來源 DataControlField) |
IStateManager.SaveViewState() |
儲存自頁面回傳至伺服器以來對 DataControlField 檢視狀態所做的變更。 (繼承來源 DataControlField) |
IStateManager.TrackViewState() |
會造成 DataControlField 物件追蹤其檢視狀態變更,以將這些變更儲存在控制項的 ViewState 屬性中,並持續存取相同頁面的其他要求。 (繼承來源 DataControlField) |