DataPager.Fields Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient une collection d'objets DataPagerField qui représentent les champs de pagineur spécifiés dans un contrôle DataPager.
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
Valeur de propriété
Un objet de collection qui contient tous les champs de pagineur spécifiés dans le contrôle DataPager.
- Attributs
Exemples
L’exemple suivant montre comment ajouter de manière déclarative des champs de pagination à la Fields collection d’un DataPager contrôle.
<%@ 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>
L’exemple suivant montre comment utiliser la Fields propriété pour ajouter dynamiquement un NextPreviousPagerField objet à un DataPager contrôle. Cet exemple de code fait partie d’un exemple plus grand fourni pour le NextPreviousPagerField constructeur.
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
Remarques
Les champs du pagineur s’affichent dans le DataPager contrôle dans l’ordre dans lequel les champs du pagineur apparaissent dans la Fields collection. Le tableau suivant montre les classes de champ du pagineur qui dérivent de la DataPagerField classe et qui peuvent être utilisées dans la Fields collection.
Type de champ du pagineur | Description |
---|---|
NextPreviousPagerField | Permet aux utilisateurs de parcourir les pages de données une page à la fois, ou de passer à la première ou à la dernière page de données. |
NumericPagerField | Permet aux utilisateurs de sélectionner une page de données par numéro de page. |
TemplatePagerField | Vous permet de créer une interface utilisateur de pagination personnalisée. |
Pour spécifier de manière déclarative les champs du pagineur d’un DataPager contrôle, placez un Fields
élément à l’intérieur du DataPager contrôle. Vous pouvez ensuite répertorier les champs du pagineur que vous souhaitez inclure entre les balises d’ouverture et de fermeture <Fields>
.
Vous pouvez ajouter par programmation des champs de pagineur à la Fields collection. Toutefois, il est plus facile de répertorier les champs du pagineur de manière déclarative dans le DataPager contrôle.