DataPagerField Klasa

Definicja

Służy jako klasa podstawowa dla typów pól stronicowania danych, które reprezentują kontrolkę nawigacji dla kontrolki DataPager .

public ref class DataPagerField abstract : System::Web::UI::IStateManager
public abstract class DataPagerField : System.Web.UI.IStateManager
type DataPagerField = class
    interface IStateManager
Public MustInherit Class DataPagerField
Implements IStateManager
Dziedziczenie
DataPagerField
Pochodne
Implementuje

Przykłady

W poniższym przykładzie pokazano, jak używać NextPreviousPagerFieldobiektów , NumericPagerFieldi TemplatePagerField do wyświetlania kontrolek nawigacji stron w kontrolce DataPager . Obiekty pochodzą z DataPagerField klasy .

<%@ 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>

Uwagi

Klasa DataPagerField służy jako klasa bazowa dla wszystkich typów pól stronicowania danych. Pola stronicowania danych są używane przez DataPager kontrolkę do reprezentowania kontrolki nawigacji.

Użyj klas pochodnych, DataPagerField aby wybrać typ pagera wyświetlany w kontrolce DataPager . W poniższej tabeli wymieniono dostępne typy pól stronicowania danych.

Typ pola Pager Opis
NextPreviousPagerField Umożliwia użytkownikom nawigowanie po jednej stronie danych na jednej stronie lub przechodzenie do pierwszej lub ostatniej strony.
NumericPagerField Umożliwia użytkownikom wybranie strony według numeru strony.
TemplatePagerField Umożliwia deweloperom stron tworzenie niestandardowego interfejsu użytkownika stronicowania.

Możesz pochodzić z klasy, DataPagerField aby utworzyć dodatkowe typy pól pager.

Uwagi dotyczące implementowania

Po dziedziczeniu DataPagerField z klasy należy zastąpić następujące elementy członkowskie:

Konstruktory

DataPagerField()

Inicjuje nowe wystąpienie klasy DataPagerField.

Właściwości

DataPager

Pobiera odwołanie do stronicowania danych skojarzonego DataPagerField z obiektem.

IsTrackingViewState

Pobiera wartość wskazującą, czy DataPagerField obiekt śledzi zmiany stanu widoku.

QueryStringHandled

Pobiera lub ustawia wartość wskazującą, czy pole ciągu zapytania zostało ocenione.

QueryStringValue

Pobiera wartość pola ciągu zapytania z adresu URL żądania.

ViewState

Pobiera słownik informacji o stanie, który umożliwia zapisywanie i przywracanie stanu DataPagerField widoku obiektu w wielu żądaniach dla tej samej strony.

Visible

Pobiera lub ustawia wartość wskazującą, czy pole stronicowania danych jest renderowane.

Metody

CloneField()

Tworzy kopię bieżącego obiektu, który pochodzi z DataPagerFieldklasy .

CopyProperties(DataPagerField)

Kopiuje właściwości bieżącego obiektu pochodzącego z DataPagerField określonego DataPagerField obiektu.

CreateDataPagers(DataPagerFieldItem, Int32, Int32, Int32, Int32)

Po zastąpieniu w klasie pochodnej tworzy kontrolki interfejsu użytkownika dla obiektu pola stronicowania danych i dodaje je do określonego kontenera.

CreateField()

Po przesłonięciu w klasie pochodnej tworzy pusty obiekt, który jest pochodny DataPagerField.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetQueryStringNavigateUrl(Int32)

Tworzy adres URL zawierający pole ciągu zapytania, które ma określony numer strony.

GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
HandleEvent(CommandEventArgs)

W przypadku zastąpienia w klasie pochodnej obsługuje zdarzenia występujące w obiekcie pola stronicowania danych.

LoadViewState(Object)

Przywraca informacje o stanie widoku, które zostały zapisane wcześniej.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
OnFieldChanged()

FieldChanged Zgłasza zdarzenie.

SaveViewState()

Zapisuje zmiany wprowadzone w DataPagerField stanie widoku obiektu.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
TrackViewState()

DataPagerField Powoduje, że obiekt śledzi zmiany w stanie widoku, aby można je było przechowywać we właściwości kontrolki ViewState i utrwalać na żądaniach dla tej samej strony.

Jawne implementacje interfejsu

IStateManager.IsTrackingViewState

Pobiera wartość wskazującą, czy DataPagerField obiekt śledzi zmiany stanu widoku.

IStateManager.LoadViewState(Object)

Przywraca informacje o stanie widoku, które zostały zapisane wcześniej.

IStateManager.SaveViewState()

Zapisuje zmiany wprowadzone w DataPagerField stanie widoku obiektu.

IStateManager.TrackViewState()

DataPagerField Powoduje, że obiekt śledzi zmiany w stanie widoku, aby można je było przechowywać we właściwości kontrolki ViewState i utrwalać na żądaniach dla tej samej strony.

Dotyczy

Zobacz też