DetailsView.HeaderTemplate Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u de door de gebruiker gedefinieerde inhoud voor de veldnamenrij in een DetailsView besturingselement op of stelt u deze in.
public:
virtual property System::Web::UI::ITemplate ^ HeaderTemplate { System::Web::UI::ITemplate ^ get(); void set(System::Web::UI::ITemplate ^ value); };
[System.ComponentModel.Browsable(false)]
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
[System.Web.UI.TemplateContainer(typeof(System.Web.UI.WebControls.DetailsView))]
public virtual System.Web.UI.ITemplate HeaderTemplate { get; set; }
[<System.ComponentModel.Browsable(false)>]
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
[<System.Web.UI.TemplateContainer(typeof(System.Web.UI.WebControls.DetailsView))>]
member this.HeaderTemplate : System.Web.UI.ITemplate with get, set
Public Overridable Property HeaderTemplate As ITemplate
Waarde van eigenschap
Een ITemplate met de aangepaste inhoud voor de veldnamenrij. De standaardwaarde is null, wat aangeeft dat deze eigenschap niet is ingesteld.
- Kenmerken
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u de HeaderTemplate eigenschap gebruikt om een aangepaste veldnamenrij te maken.
<%@ Page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void CustomerDetailView_ItemCreated(Object sender, EventArgs e)
{
// Get the header row.
DetailsViewRow headerRow = CustomerDetailView.HeaderRow;
// Get the Label control that displays the current page information
// from the header row.
Label pageNum = (Label)headerRow.FindControl("PageNumberLabel");
if(pageNum != null)
{
// Update the Label control with the current page number.
int page = CustomerDetailView.DataItemIndex + 1;
pageNum.Text = "Page " + page.ToString ();
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsView HeaderTemplate Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView HeaderTemplate Example</h3>
<asp:detailsview id="CustomerDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneraterows="true"
allowpaging="true"
onitemcreated="CustomerDetailView_ItemCreated"
runat="server">
<headerstyle backcolor="Navy"
forecolor="White"/>
<pagersettings Mode="NextPreviousFirstLast"/>
<headertemplate>
<table width="100%">
<tr>
<td align="left">
<asp:Image id="LogoImage"
imageurl="~\images\Logo.jpg"
AlternateText="Our logo"
runat="server"/>
</td>
<td align="right" valign="bottom">
<asp:Label id="PageNumberLabel"
font-size="9"
forecolor="DodgerBlue"
runat="server"/>
</td>
</tr>
</table>
</headertemplate>
</asp:detailsview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the web.config file. -->
<asp:SqlDataSource ID="DetailsViewSource" runat="server"
ConnectionString=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
InsertCommand="INSERT INTO [Customers]([CustomerID],
[CompanyName], [Address], [City], [PostalCode], [Country])
VALUES (@CustomerID, @CompanyName, @Address, @City,
@PostalCode, @Country)"
SelectCommand="Select [CustomerID], [CompanyName],
[Address], [City], [PostalCode], [Country] From
[Customers]">
</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">
<script runat="server">
Sub CustomerDetailView_ItemCreated(ByVal sender As Object, _
ByVal e As EventArgs)
' Get the header row.
Dim headerRow As DetailsViewRow = CustomerDetailView.HeaderRow
' Get the Label control that displays the current page information
' from the header row.
Dim pageNum As Label = _
CType(headerRow.FindControl("PageNumberLabel"), Label)
If Not pageNum Is Nothing Then
' Update the Label control with the current page number.
Dim page As Integer = CustomerDetailView.DataItemIndex + 1
pageNum.Text = "Page " & page.ToString()
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsView HeaderTemplate Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView HeaderTemplate Example</h3>
<asp:detailsview id="CustomerDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneraterows="true"
allowpaging="true"
onitemcreated="CustomerDetailView_ItemCreated"
runat="server">
<headerstyle backcolor="Navy"
forecolor="White"/>
<pagersettings Mode="NextPreviousFirstLast"/>
<headertemplate>
<table width="100%">
<tr>
<td align="left">
<asp:Image id="LogoImage"
imageurl="~\images\Logo.jpg"
AlternateText="Our logo"
runat="server"/>
</td>
<td align="right" valign="bottom">
<asp:Label id="PageNumberLabel"
font-size="9"
forecolor="DodgerBlue"
runat="server"/>
</td>
</tr>
</table>
</headertemplate>
</asp:detailsview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the web.config file. -->
<asp:SqlDataSource ID="DetailsViewSource" runat="server"
ConnectionString=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
InsertCommand="INSERT INTO [Customers]([CustomerID],
[CompanyName], [Address], [City], [PostalCode], [Country])
VALUES (@CustomerID, @CompanyName, @Address, @City,
@PostalCode, @Country)"
SelectCommand="Select [CustomerID], [CompanyName],
[Address], [City], [PostalCode], [Country] From
[Customers]">
</asp:SqlDataSource>
</form>
</body>
</html>
Opmerkingen
De veldnamenrij wordt boven aan het DetailsView besturingselement weergegeven wanneer de HeaderText of HeaderTemplate eigenschap is ingesteld. U kunt uw eigen aangepaste gebruikersinterface (UI) definiƫren voor de veldnamenrij met behulp van de HeaderTemplate eigenschap. Als u een aangepaste sjabloon voor de veldnamenrij wilt opgeven, plaatst <HeaderTemplate> u eerst tags tussen de openings- en slottags van het DetailsView besturingselement. Vervolgens kunt u de inhoud van de sjabloon weergeven tussen de openings- en sluitingstags <HeaderTemplate> . Gebruik de HeaderStyle eigenschap om de stijl van de veldnamenrij te bepalen. U kunt ook tekst in de veldnamenrij weergeven door de HeaderText eigenschap in te stellen in plaats van deze eigenschap.
Note
Als zowel de eigenschappen HeaderText als de HeaderTemplate eigenschappen zijn ingesteld, heeft de HeaderTemplate eigenschap voorrang.