DataGridPagerStyle.PageButtonCount Propriedade

Definição

Obtém ou define o número de botões numéricos a serem exibidos simultaneamente no elemento do pager do controle DataGrid.Gets or sets the number of numeric buttons to display concurrently in the pager element of the DataGrid control.

public:
 property int PageButtonCount { int get(); void set(int value); };
[System.ComponentModel.Bindable(true)]
public int PageButtonCount { get; set; }
public int PageButtonCount { get; set; }
[<System.ComponentModel.Bindable(true)>]
member this.PageButtonCount : int with get, set
member this.PageButtonCount : int with get, set
Public Property PageButtonCount As Integer

Valor da propriedade

Int32

O número de botões numéricos a serem exibidos simultaneamente no elemento do pager do controle DataGrid.The number of numeric buttons to display concurrently in the pager element of the DataGrid control. O valor padrão é 10.The default value is 10.

Atributos

Exceções

O valor selecionado é menor que 1.The selected value is less than 1.

Exemplos

O exemplo de código a seguir demonstra como usar a PageButtonCount propriedade para exibir cinco botões de página numéricos simultaneamente no elemento de pager de um DataGrid controle.The following code example demonstrates how to use the PageButtonCount property to display five numeric page buttons concurrently in the pager element of a DataGrid control.

<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
 
<!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" >
   <script language="C#" runat="server">
 
      ICollection CreateDataSource() 
      {
         DataTable dt = new DataTable();
         DataRow dr;
 
         dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
         dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
         dt.Columns.Add(new DataColumn("DateTimeValue", typeof(string)));
         dt.Columns.Add(new DataColumn("BoolValue", typeof(bool)));
 
         for (int i = 0; i < 100; i++) 
         {
            dr = dt.NewRow();
   
            dr[0] = i;
            dr[1] = "Item " + i.ToString();
            dr[2] = DateTime.Now.ToShortDateString();
            dr[3] = (i % 2 != 0) ? true : false;
 
            dt.Rows.Add(dr);
         }
 
         DataView dv = new DataView(dt);
         return dv;
      }
 
      void Page_Load(Object sender, EventArgs e) 
      { 
         BindGrid();
      }
 
      void MyDataGrid_Page(Object sender, DataGridPageChangedEventArgs e) 
      {
         MyDataGrid.CurrentPageIndex = e.NewPageIndex;
         BindGrid();
      }
 
      void BindGrid() 
      {
         MyDataGrid.DataSource = CreateDataSource();
         MyDataGrid.DataBind();
         ShowStats();
      }
 
      void ShowStats() 
      {
         lblEnabled.Text = "AllowPaging is " + MyDataGrid.AllowPaging;
         lblCurrentIndex.Text = "CurrentPageIndex is " + MyDataGrid.CurrentPageIndex;
         lblPageCount.Text = "PageCount is " + MyDataGrid.PageCount;
         lblPageSize.Text = "PageSize is " + MyDataGrid.PageSize;
      }
 
 
   </script>
 
<head runat="server">
    <title>Paging with DataGrid</title>
</head>
<body>
 
   <h3>Paging with DataGrid</h3>
 
   <form id="form1" runat="server">
 
      <asp:DataGrid id="MyDataGrid" runat="server"
           AllowPaging="True"
           PageSize="10"
           PagerStyle-Mode="NumericPages"
           PagerStyle-PageButtonCount="5"
           PagerStyle-HorizontalAlign="Right"
           OnPageIndexChanged="MyDataGrid_Page"
           BorderColor="black"
           BorderWidth="1"
           GridLines="Both"
           CellPadding="3"
           CellSpacing="0"
           Font-Names="Verdana"
           Font-Size="8pt"
           HeaderStyle-BackColor="#aaaadd"
           AlternatingItemStyle-BackColor="#eeeeee"/>

      <br />
 
      <table style="background-color:#eeeeee; padding:6">
         <tr>
            <td style="display:inline">
               
 
                  <asp:Label id="lblEnabled" 
                       runat="server"/><br />
                  <asp:Label id="lblCurrentIndex" 
                       runat="server"/><br />
                  <asp:Label id="lblPageCount" 
                       runat="server"/><br />
                  <asp:Label id="lblPageSize" 
                       runat="server"/><br />
 
               
            </td>
         </tr>
      </table>
 
   </form>
 
</body>
</html>

<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
 
<!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" >
   <script language="VB" runat="server">
 
    Function CreateDataSource() As ICollection
        Dim dt As New DataTable()
        Dim dr As DataRow
        
        dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
        dt.Columns.Add(New DataColumn("StringValue", GetType(String)))
        dt.Columns.Add(New DataColumn("DateTimeValue", GetType(String)))
        dt.Columns.Add(New DataColumn("BoolValue", GetType(Boolean)))
        
        Dim i As Integer
        For i = 0 To 99
            dr = dt.NewRow()
            
            dr(0) = i
            dr(1) = "Item " & i.ToString()
            dr(2) = DateTime.Now.ToShortDateString()
            If i Mod 2 <> 0 Then
                dr(3) = True
            Else
                dr(3) = False
            End If
            
            dt.Rows.Add(dr)
        Next i
        
        Dim dv As New DataView(dt)
        Return dv
    End Function 'CreateDataSource


    Sub Page_Load(sender As Object, e As EventArgs)
        BindGrid()
    End Sub 'Page_Load


    Sub MyDataGrid_Page(sender As Object, e As DataGridPageChangedEventArgs)
        MyDataGrid.CurrentPageIndex = e.NewPageIndex
        BindGrid()
    End Sub 'MyDataGrid_Page


    Sub BindGrid()
        MyDataGrid.DataSource = CreateDataSource()
        MyDataGrid.DataBind()
        ShowStats()
    End Sub 'BindGrid


    Sub ShowStats()
        lblEnabled.Text = "AllowPaging is " & MyDataGrid.AllowPaging
        lblCurrentIndex.Text = "CurrentPageIndex is " & MyDataGrid.CurrentPageIndex
        lblPageCount.Text = "PageCount is " & MyDataGrid.PageCount
        lblPageSize.Text = "PageSize is " & MyDataGrid.PageSize
    End Sub 'ShowStats 
   </script>
 
<head runat="server">
    <title>Paging with DataGrid</title>
</head>
<body>
 
   <h3>Paging with DataGrid</h3>
 
   <form id="form1" runat="server">
 
      <asp:DataGrid id="MyDataGrid" runat="server"
           AllowPaging="True"
           PageSize="10"
           PagerStyle-Mode="NumericPages"
           PagerStyle-PageButtonCount="5"
           PagerStyle-HorizontalAlign="Right"
           OnPageIndexChanged="MyDataGrid_Page"
           BorderColor="black"
           BorderWidth="1"
           GridLines="Both"
           CellPadding="3"
           CellSpacing="0"
           Font-Names="Verdana"
           Font-Size="8pt"
           HeaderStyle-BackColor="#aaaadd"
           AlternatingItemStyle-BackColor="#eeeeee"/>

      <br />
 
      <table style="background-color:#eeeeee; padding:6">
         <tr>
            <td style="display:inline">
               
 
                  <asp:Label id="lblEnabled" 
                       runat="server"/><br />
                  <asp:Label id="lblCurrentIndex" 
                       runat="server"/><br />
                  <asp:Label id="lblPageCount" 
                       runat="server"/><br />
                  <asp:Label id="lblPageSize" 
                       runat="server"/><br />
 
               
            </td>
         </tr>
      </table>
 
   </form>
 
</body>
</html>

Comentários

Use a PageButtonCount propriedade para especificar o número de botões numéricos a serem exibidos simultaneamente no elemento pager do DataGrid controle.Use the PageButtonCount property to specify the number of numeric buttons to display concurrently in the pager element of the DataGrid control. A Mode propriedade deve ser definida como PagerMode.NumericPages para que essa propriedade tenha qualquer efeito.The Mode property must be set to PagerMode.NumericPages for this property to have any effect.

Se houver mais páginas no controle do DataGrid que o especificado nesta propriedade, os botões de reticências (...) serão exibidos no elemento do pager.If there are more pages in the DataGrid control than specified in this property, ellipsis buttons (...) are displayed in the pager element. Quando clicado, esses botões exibem o próximo conjunto de botões numéricos ou anterior.When clicked, these buttons display the next or previous set of numeric buttons.

Aplica-se a

Confira também