FormView.PagerTemplate Egenskap

Definition

Hämtar eller anger det anpassade innehållet för sidsökarraden i en FormView kontroll.

public:
 virtual property System::Web::UI::ITemplate ^ PagerTemplate { 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.FormView))]
public virtual System.Web.UI.ITemplate PagerTemplate { get; set; }
[<System.ComponentModel.Browsable(false)>]
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
[<System.Web.UI.TemplateContainer(typeof(System.Web.UI.WebControls.FormView))>]
member this.PagerTemplate : System.Web.UI.ITemplate with get, set
Public Overridable Property PagerTemplate As ITemplate

Egenskapsvärde

En ITemplate som innehåller det anpassade innehållet för pager-raden. Standardvärdet är null, vilket anger att den här egenskapen inte har angetts.

Attribut

Exempel

I följande exempel visas hur du definierar en anpassad sidmall.


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

  void EmployeeFormView_DataBound(Object sender, EventArgs e)
  {

    // Get the pager row.
    FormViewRow pagerRow = EmployeeFormView.BottomPagerRow;

    // Get the Label controls that display the current page information 
    // from the pager row.
    Label pageNum = (Label)pagerRow.Cells[0].FindControl("PageNumberLabel");
    Label totalNum = (Label)pagerRow.Cells[0].FindControl("TotalPagesLabel");

    if ((pageNum != null) && (totalNum != null))
    {
      // Update the Label controls with the current page values.
      int page = EmployeeFormView.PageIndex + 1;
      int count = EmployeeFormView.PageCount;

      pageNum.Text = page.ToString();
      totalNum.Text = count.ToString();
    }    

  }
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>FormView PagerTemplate Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>FormView PagerTemplate Example</h3>
                       
      <asp:formview id="EmployeeFormView"
        datasourceid="EmployeeSource"
        allowpaging="true"
        datakeynames="EmployeeID"
        ondatabound="EmployeeFormView_DataBound" 
        runat="server">
        
        <itemtemplate>
          <table>
            <tr>
              <td>
                <asp:image id="EmployeeImage"
                  imageurl='<%# Eval("PhotoPath") %>'
                  alternatetext='<%# Eval("LastName") %>' 
                  runat="server"/>
              </td>
              <td>
                <h3><%# Eval("FirstName") %> <%# Eval("LastName") %></h3>      
                <%# Eval("Title") %>        
              </td>
            </tr>
          </table>    
        </itemtemplate>
        
        <pagertemplate>   
          <table width="100%">
            <tr>
              <td>
                <asp:linkbutton id="PreviousButton"
                  text="<"
                  commandname="Page"
                  commandargument="Prev"
                  runat="Server"/>
                <asp:linkbutton id="NextButton"
                  text=">"
                  commandname="Page"
                  commandargument="Next"
                  runat="Server"/> 
              </td>
              <td align="right">                
                Page <asp:label id="PageNumberLabel" runat="server"/> 
                of <asp:label id="TotalPagesLabel" runat="server"/>                
              </td>
            </tr>
          </table>          
        </pagertemplate>
          
        <pagersettings position="Bottom"
          mode="NextPrevious"/> 
                  
      </asp:formview>
          
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="EmployeeSource"
        selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title], [PhotoPath] From [Employees]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" 
        runat="server"/>
            
    </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">

  Sub EmployeeFormView_DataBound(ByVal sender As Object, ByVal e As EventArgs)

    ' Get the pager row.
    Dim pagerRow As FormViewRow = EmployeeFormView.BottomPagerRow

    ' Get the Label controls that display the current page information 
    ' from the pager row.
    Dim pageNum As Label = CType(pagerRow.Cells(0).FindControl("PageNumberLabel"), Label)
    Dim totalNum As Label = CType(pagerRow.Cells(0).FindControl("TotalPagesLabel"), Label)

    If pageNum IsNot Nothing And totalNum IsNot Nothing Then

      ' Update the Label controls with the current page values.
      Dim page As Integer = EmployeeFormView.PageIndex + 1
      Dim count As Integer = EmployeeFormView.PageCount

      pageNum.Text = page.ToString()
      totalNum.Text = count.ToString()
    
    End If

  End Sub
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>FormView PagerTemplate Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>FormView PagerTemplate Example</h3>
                       
      <asp:formview id="EmployeeFormView"
        datasourceid="EmployeeSource"
        allowpaging="true"
        datakeynames="EmployeeID"
        ondatabound="EmployeeFormView_DataBound" 
        runat="server">
        
        <itemtemplate>
          <table>
            <tr>
              <td>
                <asp:image id="EmployeeImage"
                  imageurl='<%# Eval("PhotoPath") %>'
                  alternatetext='<%# Eval("LastName") %>' 
                  runat="server"/>
              </td>
              <td>
                <h3><%# Eval("FirstName") %> <%# Eval("LastName") %></h3>      
                <%# Eval("Title") %>        
              </td>
            </tr>
          </table>    
        </itemtemplate>
        
        <pagertemplate>   
          <table width="100%">
            <tr>
              <td>
                <asp:linkbutton id="PreviousButton"
                  text="<"
                  commandname="Page"
                  commandargument="Prev"
                  runat="Server"/>
                <asp:linkbutton id="NextButton"
                  text=">"
                  commandname="Page"
                  commandargument="Next"
                  runat="Server"/> 
              </td>
              <td align="right">                
                Page <asp:label id="PageNumberLabel" runat="server"/> 
                of <asp:label id="TotalPagesLabel" runat="server"/>                
              </td>
            </tr>
          </table>          
        </pagertemplate>
          
        <pagersettings position="Bottom"
          mode="NextPrevious"/> 
                  
      </asp:formview>
          
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="EmployeeSource"
        selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title], [PhotoPath] From [Employees]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" 
        runat="server"/>
            
    </form>
  </body>
</html>

Kommentarer

En personsökarrad visas i en FormView kontroll när växlingsfunktionen är aktiverad (när AllowPaging egenskapen är inställd på true). Pager-raden innehåller de kontroller som gör att användaren kan navigera till de olika sidorna i kontrollen. I stället för att använda det inbyggda användargränssnittet för pager-rad (UI) kan du definiera ditt eget användargränssnitt med hjälp PagerTemplate av egenskapen .

Note

När egenskapen PagerTemplate har angetts åsidosätter den det inbyggda användargränssnittet för sidvändarraden.

Om du vill ange en anpassad mall för sidsökarraden placerar du taggarna för första plats <PagerTemplate> mellan kontrollens FormView inledande och avslutande taggar. Du kan sedan visa en lista över innehållet i mallen mellan de inledande och avslutande <PagerTemplate> taggarna. Använd egenskapen om du vill styra utseendet på pager-raden PagerStyle .

Vanligtvis läggs knappkontroller till i personsökarmallen för att utföra växlingsåtgärderna. Kontrollen FormView utför en växlingsåtgärd när en knappkontroll med dess CommandName egenskap inställd på "Sida" klickas. Knappens CommandArgument egenskap avgör vilken typ av växlingsåtgärd som ska utföras. I följande tabell visas de kommandoargumentvärden som stöds av FormView kontrollen.

CommandArgument-värde Description
"Nästa" Navigerar till nästa sida.
"Föregående" Navigerar till föregående sida.
"Först" Navigerar till den första sidan.
"Sista" Navigerar till den sista sidan.
Heltalsvärde Navigerar till det angivna sidnumret.

Gäller för

Se även