DataPager.Fields Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém uma coleção de DataPagerField objetos que representam os campos de pager especificados em um DataPager controle.
public:
virtual property System::Web::UI::WebControls::DataPagerFieldCollection ^ Fields { System::Web::UI::WebControls::DataPagerFieldCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public virtual System.Web.UI.WebControls.DataPagerFieldCollection Fields { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.Fields : System.Web.UI.WebControls.DataPagerFieldCollection
Public Overridable ReadOnly Property Fields As DataPagerFieldCollection
Valor da propriedade
Um objeto de coleção que contém todos os campos de pager especificados no DataPager controle.
- Atributos
Exemplos
O exemplo a seguir mostra como adicionar declarativamente campos de pager à Fields coleção de um DataPager controle.
<%@ 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>DataPagerField Example</title>
<style type="text/css">
body
{
text-align: center;
font: 13px Tahoma, Arial, Helvetica;
}
.item
{
border-bottom: solid 1px #FFA500;
font-weight:bold;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<h3>DataPagerField Example</h3>
<asp:ListView ID="ProductsListView"
DataSourceID="ContactsDataSource"
runat="server">
<LayoutTemplate>
<table runat="server" id="tblProducts" width="350">
<tr runat="server" id="itemPlaceholder" />
</table>
</LayoutTemplate>
<ItemTemplate>
<tr runat="server">
<td class="item">
<asp:Label ID="NameLabel" runat="server"
Text='<%#Eval("Name") %>' />
</td>
</tr>
<tr runat="server">
<td>
<asp:Label ID="DescriptionLabel" runat="server"
Text='<%#Eval("Description")%>' />
</td>
</tr>
</ItemTemplate>
<ItemSeparatorTemplate>
<tr runat="server">
<td> </td>
</tr>
</ItemSeparatorTemplate>
</asp:ListView>
<br />
<asp:DataPager runat="server"
ID="ProductsDataPager"
PageSize="5"
PagedControlID="ProductsListView">
<Fields>
<asp:TemplatePagerField>
<PagerTemplate>
<b>
Page
<asp:Label runat="server" ID="CurrentPageLabel"
Text="<%# Container.TotalRowCount>0 ? (Container.StartRowIndex / Container.PageSize) + 1 : 0 %>" />
of
<asp:Label runat="server" ID="TotalPagesLabel"
Text="<%# Math.Ceiling ((double)Container.TotalRowCount / Container.PageSize) %>" />
</b>
<br /><br />
</PagerTemplate>
</asp:TemplatePagerField>
<asp:NextPreviousPagerField
ShowFirstPageButton="true"
ShowNextPageButton="false"
ShowPreviousPageButton="false" />
<asp:NumericPagerField
PreviousPageText="<<"
NextPageText=">>"
ButtonCount="10" />
<asp:NextPreviousPagerField
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="ContactsDataSource" runat="server"
ConnectionString="<%$ ConnectionStrings:AdventureWorks_DataConnectionString %>"
SelectCommand="SELECT P.Name, PD.Description
FROM Production.ProductModel AS PM
INNER JOIN Production.Product AS P ON PM.ProductModelID = P.ProductModelID
INNER JOIN Production.ProductModelProductDescriptionCulture AS PMPDC
ON PM.ProductModelID = PMPDC.ProductModelID
INNER JOIN Production.ProductDescription AS PD
ON PMPDC.ProductDescriptionID = PD.ProductDescriptionID
WHERE (PMPDC.CultureID = 'en')">
</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>DataPagerField Example</title>
<style type="text/css">
body
{
text-align: center;
font: 13px Tahoma, Arial, Helvetica;
}
.item
{
border-bottom: solid 1px #FFA500;
font-weight:bold;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<h3>DataPagerField Example</h3>
<asp:ListView ID="ProductsListView"
DataSourceID="ContactsDataSource"
runat="server">
<LayoutTemplate>
<table runat="server" id="tblProducts" width="350">
<tr runat="server" id="itemPlaceholder" />
</table>
</LayoutTemplate>
<ItemTemplate>
<tr runat="server">
<td class="item">
<asp:Label ID="NameLabel" runat="server"
Text='<%#Eval("Name") %>' />
</td>
</tr>
<tr runat="server">
<td>
<asp:Label ID="DescriptionLabel" runat="server"
Text='<%#Eval("Description")%>' />
</td>
</tr>
</ItemTemplate>
<ItemSeparatorTemplate>
<tr runat="server">
<td> </td>
</tr>
</ItemSeparatorTemplate>
</asp:ListView>
<br />
<asp:DataPager runat="server"
ID="ProductsDataPager"
PageSize="5"
PagedControlID="ProductsListView">
<Fields>
<asp:TemplatePagerField>
<PagerTemplate>
<b>
Page
<asp:Label runat="server" ID="CurrentPageLabel"
Text="<%# IIf(Container.TotalRowCount>0, (Container.StartRowIndex / Container.PageSize) + 1, 0) %>" />
of
<asp:Label runat="server" ID="TotalPagesLabel"
Text="<%# Math.Ceiling (System.Convert.ToDouble(Container.TotalRowCount) / Container.PageSize) %>" />
</b>
<br /><br />
</PagerTemplate>
</asp:TemplatePagerField>
<asp:NextPreviousPagerField
ShowFirstPageButton="true"
ShowNextPageButton="false"
ShowPreviousPageButton="false" />
<asp:NumericPagerField
PreviousPageText="<<"
NextPageText=">>"
ButtonCount="10" />
<asp:NextPreviousPagerField
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="ContactsDataSource" runat="server"
ConnectionString="<%$ ConnectionStrings:AdventureWorks_DataConnectionString %>"
SelectCommand="SELECT P.Name, PD.Description
FROM Production.ProductModel AS PM
INNER JOIN Production.Product AS P ON PM.ProductModelID = P.ProductModelID
INNER JOIN Production.ProductModelProductDescriptionCulture AS PMPDC
ON PM.ProductModelID = PMPDC.ProductModelID
INNER JOIN Production.ProductDescription AS PD
ON PMPDC.ProductDescriptionID = PD.ProductDescriptionID
WHERE (PMPDC.CultureID = 'en')">
</asp:SqlDataSource>
</form>
</body>
</html>
O exemplo a seguir mostra como usar a Fields propriedade para adicionar dinamicamente um NextPreviousPagerField objeto a um DataPager controle. Este exemplo de código faz parte de um exemplo maior fornecido para o NextPreviousPagerField construtor.
void Page_Load(Object sender, EventArgs e)
{
// Dynamically generated field pagers need to be created only
// the first time the page is loaded.
if (!IsPostBack)
{
// Create a NextPreviousPagerField object to display
// the buttons to navigate.
NextPreviousPagerField pagerField = new NextPreviousPagerField();
pagerField.ShowFirstPageButton = true;
pagerField.ShowLastPageButton = true;
pagerField.ButtonType = ButtonType.Button;
// Add the pager field to the Fields collection of the
// DataPager control.
ContactsDataPager.Fields.Add(pagerField);
}
ContactsListView.DataBind();
}
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' Dynamically generated field pagers need to be created only
' the first time the page is loaded.
If Not IsPostBack Then
' Create a NextPreviousPagerField object to display
' the buttons to navigate.
Dim pagerField As New NextPreviousPagerField()
pagerField.ShowFirstPageButton = True
pagerField.ShowLastPageButton = True
pagerField.ButtonType = ButtonType.Button
' Add the pager field to the Fields collection of the
' DataPager control.
ContactsDataPager.Fields.Add(pagerField)
End If
ContactsListView.DataBind()
End Sub
Comentários
Os campos de pager são exibidos no DataPager controle na ordem em que os campos de pager aparecem na Fields coleção. A tabela a seguir mostra as classes de campo de pager que derivam da DataPagerField classe e que podem ser usadas na Fields coleção.
| Tipo de campo pager | Descrição |
|---|---|
| NextPreviousPagerField | Permite que os usuários naveguem pelas páginas de dados uma página de cada vez ou pulem para a primeira ou última página de dados. |
| NumericPagerField | Permite que os usuários selecionem uma página de dados por número de página. |
| TemplatePagerField | Permite que você crie uma interface do usuário de paginação personalizada. |
Para especificar declarativamente os campos de pager para um DataPager controle, coloque um Fields elemento dentro do DataPager controle. Em seguida, você pode listar os campos de pager que deseja incluir entre as marcas de abertura e fechamento <Fields> .
Você pode adicionar programaticamente campos de pager à Fields coleção. No entanto, é mais fácil listar os campos de pager declarativamente no DataPager controle.