FormView.HeaderTemplate Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает определенное пользователем содержимое строки верхнего колонтитула в элементе управления FormView.
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.FormView))]
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.FormView))>]
member this.HeaderTemplate : System.Web.UI.ITemplate with get, set
Public Overridable Property HeaderTemplate As ITemplate
Значение свойства
Интерфейс ITemplate, содержащий пользовательское содержимое строки верхнего колонтитула. Значение по умолчанию равно null
и показывает, что значение свойства не задано.
- Атрибуты
Примеры
В следующем примере показано, как использовать HeaderTemplate свойство для определения пользовательского шаблона для отрисовки строки заголовка.
<%@ 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 EmployeeFormView_ItemCreated(Object sender, EventArgs e)
{
// Use the HeaderRow property to retrieve the header row.
FormViewRow header = EmployeeFormView.HeaderRow;
// Retrieve the HeaderLabel Label control from the header row.
Label headerLabel = (Label)header.FindControl("HeaderLabel");
if(headerLabel != null)
{
// Display the current page number.
int currentPage = EmployeeFormView.PageIndex + 1;
headerLabel.Text = "Page " + currentPage.ToString();
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>FormView HeaderTemplate Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>FormView HeaderTemplate Example</h3>
<asp:formview id="EmployeeFormView"
datasourceid="EmployeeSource"
allowpaging="true"
datakeynames="EmployeeID"
onitemcreated="EmployeeFormView_ItemCreated"
runat="server">
<headertemplate>
<table>
<tr>
<td>
<asp:image id="LogoImage"
imageurl="~/Images/LogoImage.jpg"
alternatetext="Our Logo"
runat="server"/>
</td>
<td>
<asp:label id="HeaderLabel"
runat="server"/>
</td>
</tr>
</table>
</headertemplate>
<headerstyle horizontalalign="Center"
forecolor="White"
backcolor="LightBlue"/>
<itemtemplate>
<table>
<tr>
<td>
<asp:image id="EmployeeImage"
imageurl='<%# Eval("PhotoPath") %>'
alternatetext='<%# Eval("LastName") %>'
runat="server"/>
</td>
<td>
<h3><%# Eval("FirstName") %> <%# Eval("LastName") %></h3>
<%# Eval("Title") %>
</td>
</tr>
</table>
</itemtemplate>
<pagersettings position="Bottom"
mode="NextPrevious"/>
</asp:formview>
<!-- 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="EmployeeSource"
selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title], [PhotoPath] From [Employees]"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</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 EmployeeFormView_ItemCreated(ByVal sender As Object, ByVal e As EventArgs)
' Use the HeaderRow property to retrieve the header row.
Dim header As FormViewRow = EmployeeFormView.HeaderRow
' Retrieve the HeaderLabel Label control from the header row.
Dim headerLabel As Label = CType(header.FindControl("HeaderLabel"), Label)
If headerLabel IsNot Nothing Then
' Display the current page number.
Dim currentPage As Integer = EmployeeFormView.PageIndex + 1
headerLabel.Text = "Page " & currentPage.ToString()
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>FormView HeaderTemplate Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>FormView HeaderTemplate Example</h3>
<asp:formview id="EmployeeFormView"
datasourceid="EmployeeSource"
allowpaging="true"
datakeynames="EmployeeID"
onitemcreated="EmployeeFormView_ItemCreated"
runat="server">
<headertemplate>
<table>
<tr>
<td>
<asp:image id="LogoImage"
imageurl="~/Images/LogoImage.jpg"
alternatetext="Our Logo"
runat="server"/>
</td>
<td>
<asp:label id="HeaderLabel"
runat="server"/>
</td>
</tr>
</table>
</headertemplate>
<headerstyle horizontalalign="Center"
forecolor="White"
backcolor="LightBlue"/>
<itemtemplate>
<table>
<tr>
<td>
<asp:image id="EmployeeImage"
imageurl='<%# Eval("PhotoPath") %>'
alternatetext='<%# Eval("LastName") %>'
runat="server"/>
</td>
<td>
<h3><%# Eval("FirstName") %> <%# Eval("LastName") %></h3>
<%# Eval("Title") %>
</td>
</tr>
</table>
</itemtemplate>
<pagersettings position="Bottom"
mode="NextPrevious"/>
</asp:formview>
<!-- 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="EmployeeSource"
selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title], [PhotoPath] From [Employees]"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
Комментарии
Строка заголовка FormView отображается в верхней части элемента управления при HeaderText установке свойства или HeaderTemplate свойства. Вы можете определить собственный пользовательский интерфейс для строки заголовка с помощью HeaderTemplate свойства. Чтобы указать пользовательский шаблон для строки заголовка, сначала поместите <HeaderTemplate>
теги между открывающим и закрывающим тегами FormView элемента управления. Затем можно перечислить содержимое шаблона между открывающим и закрывающим <HeaderTemplate>
тегами. Чтобы управлять стилем строки заголовка, используйте HeaderStyle свойство. Кроме того, можно просто отобразить текст в строке заголовка, задав HeaderText свойство вместо этого свойства.
Примечание
Если заданы оба HeaderText HeaderTemplate свойства, HeaderTemplate свойство имеет приоритет.