ListView.GroupTemplate Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar eller anger det användardefinierade innehållet för gruppcontainern i en ListView kontroll.
public:
virtual property System::Web::UI::ITemplate ^ GroupTemplate { 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.ListViewItem))]
public virtual System.Web.UI.ITemplate GroupTemplate { get; set; }
[<System.ComponentModel.Browsable(false)>]
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
[<System.Web.UI.TemplateContainer(typeof(System.Web.UI.WebControls.ListViewItem))>]
member this.GroupTemplate : System.Web.UI.ITemplate with get, set
Public Overridable Property GroupTemplate As ITemplate
Egenskapsvärde
Ett objekt som innehåller det anpassade innehållet för gruppcontainern i en ListView kontroll. Standardvärdet är null, vilket anger att den här egenskapen inte har angetts.
- Attribut
Exempel
I följande exempel visas hur du skapar en sida vid sida-layout i ListView kontrollen med hjälp GroupTemplate av egenskapen .
<%@ 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 id="Head1" runat="server">
<title>ListView Tiled Layout Example</title>
<style type="text/css">
.header
{
background-color:#B0C4DE;
border-top:solid 1px #9dbbcc;
border-bottom:solid 1px #9dbbcc;
}
.separator { border-right: 1px solid #ccc; }
</style>
</head>
<body>
<form id="form1" runat="server">
<h3>ListView Tiled Layout Example</h3>
<asp:ListView ID="ProductsListView"
DataSourceID="ProductsDataSource"
GroupItemCount="2"
runat="server">
<LayoutTemplate>
<table cellpadding="2" width="640px" runat="server" id="tblProducts">
<tr runat="server" class="header">
<th runat="server" colspan="3">PRODUCTS LIST</th>
</tr>
<tr runat="server" id="groupPlaceholder" />
</table>
</LayoutTemplate>
<GroupTemplate>
<tr runat="server" id="ProductsRow">
<td runat="server" id="itemPlaceholder" />
</tr>
</GroupTemplate>
<GroupSeparatorTemplate>
<tr runat="server">
<td colspan="3"><hr /></td>
</tr>
</GroupSeparatorTemplate>
<ItemTemplate>
<td align="center" style="width:300px" runat="server">
<asp:HyperLink ID="ProductLink" runat="server"
Text='<%# Eval("Name") %>'
NavigateUrl='<%# "ProductDetails.aspx?productID=" + Eval("ProductID") %>' /><br />
<asp:Image ID="ProductImage" runat="server"
ImageUrl='<%# "~/images/thumbnails/" + Eval("ThumbnailPhotoFileName") %>' /><br />
<b>Price:</b>
<asp:Label ID="PriceLabel" runat="server" Text='<%# Eval("ListPrice", "{0:c}")%>' /><br />
</td>
</ItemTemplate>
<ItemSeparatorTemplate>
<td class="separator" runat="server"> </td>
</ItemSeparatorTemplate>
</asp:ListView>
<br />
<asp:DataPager runat="server" ID="ProductsDataPager"
PagedControlID="ProductsListView">
<Fields>
<asp:NextPreviousPagerField ButtonType="Button"
ShowFirstPageButton="true"
ShowNextPageButton="false"
ShowPreviousPageButton="false" />
<asp:NumericPagerField ButtonCount="10" />
<asp:NextPreviousPagerField ButtonType="Button"
ShowLastPageButton="true"
ShowNextPageButton="false"
ShowPreviousPageButton="false" />
</Fields>
</asp:DataPager>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the AdventureWorks sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the Web.config file. -->
<asp:SqlDataSource ID="ProductsDataSource" runat="server"
ConnectionString="<%$ ConnectionStrings:AdventureWorks_DataConnectionString %>"
SelectCommand="SELECT P.ProductID, P.Name, P.Color, P.ListPrice,
PF.ThumbnailPhotoFileName
FROM Production.Product AS P
INNER JOIN Production.ProductProductPhoto AS PPF ON P.ProductID = PPF.ProductID
INNER JOIN Production.ProductPhoto AS PF ON PPF.ProductPhotoID = PF.ProductPhotoID">
</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 id="Head1" runat="server">
<title>ListView Tiled Layout Example</title>
<style type="text/css">
.header
{
background-color:#B0C4DE;
border-top:solid 1px #9dbbcc;
border-bottom:solid 1px #9dbbcc;
}
.separator { border-right: 1px solid #ccc; }
</style>
</head>
<body>
<form id="form1" runat="server">
<h3>ListView Tiled Layout Example</h3>
<asp:ListView ID="ProductsListView"
DataSourceID="ProductsDataSource"
GroupItemCount="2"
runat="server">
<LayoutTemplate>
<table cellpadding="2" width="640px" runat="server" id="tblProducts">
<tr runat="server" class="header">
<th runat="server" colspan="3">PRODUCTS LIST</th>
</tr>
<tr runat="server" id="groupPlaceholder" />
</table>
</LayoutTemplate>
<GroupTemplate>
<tr runat="server" id="ProductsRow">
<td runat="server" id="itemPlaceholder" />
</tr>
</GroupTemplate>
<GroupSeparatorTemplate>
<tr runat="server">
<td colspan="3"><hr /></td>
</tr>
</GroupSeparatorTemplate>
<ItemTemplate>
<td align="center" style="width:300px" runat="server">
<asp:HyperLink ID="ProductLink" runat="server"
Text='<%# Eval("Name") %>'
NavigateUrl='<%# "ProductDetails.aspx?productID=" & Eval("ProductID") %>' /><br />
<asp:Image ID="ProductImage" runat="server"
ImageUrl='<%# "~/images/thumbnails/" & Eval("ThumbnailPhotoFileName") %>' /><br />
<b>Price:</b>
<asp:Label ID="PriceLabel" runat="server" Text='<%# Eval("ListPrice", "{0:c}")%>' /><br />
</td>
</ItemTemplate>
<ItemSeparatorTemplate>
<td class="separator" runat="server"> </td>
</ItemSeparatorTemplate>
</asp:ListView>
<br />
<asp:DataPager runat="server" ID="ProductsDataPager"
PagedControlID="ProductsListView">
<Fields>
<asp:NextPreviousPagerField ButtonType="Button"
ShowFirstPageButton="true"
ShowNextPageButton="false"
ShowPreviousPageButton="false" />
<asp:NumericPagerField ButtonCount="10" />
<asp:NextPreviousPagerField ButtonType="Button"
ShowLastPageButton="true"
ShowNextPageButton="false"
ShowPreviousPageButton="false" />
</Fields>
</asp:DataPager>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the AdventureWorks sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the Web.config file. -->
<asp:SqlDataSource ID="ProductsDataSource" runat="server"
ConnectionString="<%$ ConnectionStrings:AdventureWorks_DataConnectionString %>"
SelectCommand="SELECT P.ProductID, P.Name, P.Color, P.ListPrice,
PF.ThumbnailPhotoFileName
FROM Production.Product AS P
INNER JOIN Production.ProductProductPhoto AS PPF ON P.ProductID = PPF.ProductID
INNER JOIN Production.ProductPhoto AS PF ON PPF.ProductPhotoID = PF.ProductPhotoID">
</asp:SqlDataSource>
</form>
</body>
</html>
Kommentarer
Använd egenskapen GroupTemplate för att skapa en tillagda layout i ListView kontrollen. I en tabelllayout med tillagda tabeller upprepas objekten vågrätt på en rad. Antalet gånger som ett objekt upprepas anges av GroupItemCount egenskapen.
Om du vill ange en mall deklarativt för gruppcontainern lägger du till ett GroupTemplate element i ListView kontrollen. Du kan sedan lägga till innehållet i mallen i elementet GroupTemplate .
Egenskapen GroupTemplate måste innehålla en platshållare för dataobjektet, till exempel en tabellcell (td), diveller span ett element. Den här platshållaren måste ha runat attributet inställt på "server" och ID attributet som värdet för ItemPlaceholderID egenskapen. Vid körning ListView ersätter kontrollen platshållaren med det innehåll som har definierats för varje objekt i ItemTemplate mallarna och AlternatingItemTemplate .