ListView.GroupItemCount Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece el número de elementos que se van a mostrar por grupo en un control ListView.
public:
virtual property int GroupItemCount { int get(); void set(int value); };
public virtual int GroupItemCount { get; set; }
member this.GroupItemCount : int with get, set
Public Overridable Property GroupItemCount As Integer
Valor de propiedad
Número de elementos que va a mostrarse por grupo en un control ListView. El valor predeterminado es 1, que indica que el control ListView mostrará un elemento por grupo.
Excepciones
La propiedad GroupItemCount se establece en un valor menor que 1.
Ejemplos
En el ejemplo siguiente se muestra cómo crear un diseño en mosaico en el ListView control mediante la GroupItemCount propiedad . También se muestra cómo cambiar esta propiedad mediante programación.
<%@ 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">
protected void GroupItemCountList_SelectedIndexChanged(object sender, EventArgs e)
{
// Changes the number of items displayed for each group.
ContactsListView.GroupItemCount =
Convert.ToInt32(GroupItemCountList.SelectedValue);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>ListView GroupItemCount Example</title>
<style type="text/css">
body { font: 10pt Trebuchet MS; }
</style>
</head>
<body>
<form id="form1" runat="server">
<h3>ListView GroupItemCount Example</h3>
Number of columns:
<asp:DropDownList ID="GroupItemCountList"
AutoPostBack="true"
runat="server"
OnSelectedIndexChanged="GroupItemCountList_SelectedIndexChanged"
>
<asp:ListItem>1</asp:ListItem>
<asp:ListItem Selected="True">2</asp:ListItem>
<asp:ListItem>3</asp:ListItem>
<asp:ListItem>4</asp:ListItem>
</asp:DropDownList>
<br />
<br />
<hr />
<asp:ListView ID="ContactsListView"
DataSourceID="ContactsDataSource"
GroupItemCount="2"
runat="server">
<LayoutTemplate>
<table id="tblContacts" runat="server" cellspacing="0" cellpadding="2">
<tr runat="server" id="groupPlaceholder" />
</table>
<asp:DataPager runat="server" ID="ContactsDataPager" PageSize="24">
<Fields>
<asp:NextPreviousPagerField
ShowFirstPageButton="true" ShowLastPageButton="true"
FirstPageText="|<< " LastPageText=" >>|"
NextPageText=" > " PreviousPageText=" < " />
</Fields>
</asp:DataPager>
</LayoutTemplate>
<ItemTemplate>
<td align="center" style="width:10px" runat="server">
<asp:Label ID="IDLabel" runat="Server" Text='<%#Eval("ContactID") %>' />
</td>
<td style="width:70px" runat="server">
<asp:Label ID="FirstNameLabel" runat="Server" Text='<%#Eval("FirstName") %>' />
</td>
<td style="width:70px" runat="server">
<asp:Label ID="LastNameLabel" runat="Server" Text='<%#Eval("LastName") %>' />
</td>
</ItemTemplate>
<GroupTemplate>
<tr runat="server" id="ContactsRow" style="background-color: #FFFFFF">
<td runat="server" id="itemPlaceholder" />
</tr>
</GroupTemplate>
<ItemSeparatorTemplate>
<td runat="server" style="border-right: 1px solid #00C0C0"> </td>
</ItemSeparatorTemplate>
</asp:ListView>
<!-- 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="ContactsDataSource" runat="server"
ConnectionString="<%$ ConnectionStrings:AdventureWorks_DataConnectionString %>"
SelectCommand="SELECT [ContactID], [FirstName], [LastName] FROM Person.Contact">
</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">
Protected Sub GroupItemCountList_SelectedIndexChanged(ByVal sender As Object, _
ByVal e As EventArgs)
' Changes the number of items displayed for each group.
ContactsListView.GroupItemCount = _
Convert.ToInt32(GroupItemCountList.SelectedValue)
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>ListView GroupItemCount Example</title>
<style type="text/css">
body { font: 10pt Trebuchet MS; }
</style>
</head>
<body>
<form id="form1" runat="server">
<h3>ListView GroupItemCount Example</h3>
Number of columns:
<asp:DropDownList ID="GroupItemCountList"
AutoPostBack="true"
runat="server"
OnSelectedIndexChanged="GroupItemCountList_SelectedIndexChanged"
>
<asp:ListItem>1</asp:ListItem>
<asp:ListItem Selected="True">2</asp:ListItem>
<asp:ListItem>3</asp:ListItem>
<asp:ListItem>4</asp:ListItem>
</asp:DropDownList>
<br />
<br />
<hr />
<asp:ListView ID="ContactsListView"
DataSourceID="ContactsDataSource"
GroupItemCount="2"
runat="server">
<LayoutTemplate>
<table id="tblContacts" runat="server" cellspacing="0" cellpadding="2">
<tr runat="server" id="groupPlaceholder" />
</table>
<asp:DataPager runat="server" ID="ContactsDataPager" PageSize="24">
<Fields>
<asp:NextPreviousPagerField
ShowFirstPageButton="true" ShowLastPageButton="true"
FirstPageText="|<< " LastPageText=" >>|"
NextPageText=" > " PreviousPageText=" < " />
</Fields>
</asp:DataPager>
</LayoutTemplate>
<ItemTemplate>
<td align="center" style="width:10px" runat="server">
<asp:Label ID="IDLabel" runat="Server" Text='<%#Eval("ContactID") %>' />
</td>
<td style="width:70px" runat="server">
<asp:Label ID="FirstNameLabel" runat="Server" Text='<%#Eval("FirstName") %>' />
</td>
<td style="width:70px" runat="server">
<asp:Label ID="LastNameLabel" runat="Server" Text='<%#Eval("LastName") %>' />
</td>
</ItemTemplate>
<GroupTemplate>
<tr runat="server" id="ContactsRow" style="background-color: #FFFFFF">
<td runat="server" id="itemPlaceholder" />
</tr>
</GroupTemplate>
<ItemSeparatorTemplate>
<td runat="server" style="border-right: 1px solid #00C0C0"> </td>
</ItemSeparatorTemplate>
</asp:ListView>
<!-- 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="ContactsDataSource" runat="server"
ConnectionString="<%$ ConnectionStrings:AdventureWorks_DataConnectionString %>"
SelectCommand="SELECT [ContactID], [FirstName], [LastName] FROM Person.Contact">
</asp:SqlDataSource>
</form>
</body>
</html>
Comentarios
Utilice la GroupItemCount propiedad para especificar el número de elementos que se van a agrupar en el ListView control . (En otras palabras, especifica el número de elementos que se van a mostrar para cada grupo del control). Para cada grupo, el ListView control representa el contenido de la GroupTemplate plantilla y reemplaza el marcador de posición del elemento por el contenido real del elemento. Lo hace tantas veces como el número de elementos definidos por la GroupItemCount propiedad .
Puede usar GroupItemCount con la GroupTemplate plantilla para crear un diseño en mosaico en el ListView control . En un diseño de tabla en mosaico, los elementos se repiten horizontalmente en una fila. La propiedad especifica GroupItemCount los números de veces que un elemento se repite.