Export (0) Print
Expand All

DataGrid.PagerStyle Property

Gets the style properties of the paging section of the DataGrid control.

Namespace:  System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

[PersistenceModeAttribute(PersistenceMode.InnerProperty)]
public virtual DataGridPagerStyle PagerStyle { get; }

Property Value

Type: System.Web.UI.WebControls.DataGridPagerStyle
A DataGridPagerStyle object that contains the style properties of the paging section of the DataGrid control. The default value is an empty DataGridPagerStyle object.

Use this property to provide a custom style for the paging section of the DataGrid control. Common style attributes that can be adjusted include forecolor, backcolor, font, and content alignment within the cell. Providing a different style enhances the appearance of the DataGrid control.

To specify a custom style for the paging section, place the <PagerStyle> tags between the opening and closing tags of the DataGrid control. You can then list the style attributes within the opening <PagerStyle> tag.

The following code example demonstrates how to use the PagerStyle property to specify a custom style for the page selection elements of the 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 ) 
    {
       if (chk1.Checked)
          MyDataGrid.PagerStyle.Mode = PagerMode.NumericPages;
       else 
          MyDataGrid.PagerStyle.Mode = PagerMode.NextPrev;

       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>DataGrid Paging Example</title>
</head>
<body>

    <h3>DataGrid Paging Example</h3>

    <form id="form1" runat="server">

       <asp:DataGrid id="MyDataGrid" runat="server"
            AllowPaging="True"
            PageSize="10"
            OnPageIndexChanged="MyDataGrid_Page"
            BorderColor="black"
            BorderWidth="1"
            GridLines="Both"
            CellPadding="3"
            CellSpacing="0"
            Font-Names="Verdana"
            Font-Size="8pt">

          <PagerStyle Mode="NumericPages"
                      HorizontalAlign="Right">
          </PagerStyle>

          <HeaderStyle BackColor="#aaaadd">
          </HeaderStyle>

          <AlternatingItemStyle BackColor="#eeeeee">
          </AlternatingItemStyle>

       </asp:DataGrid>

       <br />

       <asp:Checkbox id="chk1" runat="server"
            Text="Show numeric page navigation buttons"
            Font-Names="Verdana"
            Font-Size="8pt"
            AutoPostBack="true"/>

       <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="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 runat="server">

      ICollection CreateDataSource()
      {

         // Create sample data for the DataGrid control.
         DataTable dt = new DataTable();
         DataRow dr;

         // Define the columns of the table.
         dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
         dt.Columns.Add(new DataColumn("StringValue", typeof(String)));
         dt.Columns.Add(new DataColumn("CurrencyValue", typeof(Double)));

         // Populate the table with sample values.
         for (int i=0; i<=100; i++) 
         {

            dr = dt.NewRow();

            dr[0] = i;
            dr[1] = "Item " + i.ToString();
            dr[2] = 1.23 * (i + 1);

            dt.Rows.Add(dr);

         }

         DataView dv = new DataView(dt);

         return dv;

      }

      void Page_Load(Object sender, EventArgs e)
      { 

         // Load sample data only once, when the page is first loaded.
         if (!IsPostBack)
         { 

            ItemsGrid.DataSource = CreateDataSource();
            ItemsGrid.DataBind();

         }

      }

      void Selection_Change(Object sender, EventArgs e)
      {

         // Set the background color for the paging controls section of
         // the DataGrid control.
         ItemsGrid.PagerStyle.BackColor = 
             System.Drawing.Color.FromName(List.SelectedItem.Value);

      }

      void Grid_Change(Object sender, DataGridPageChangedEventArgs e) 
      {

         // For the DataGrid control to navigate to the correct page when
         // paging is allowed, the CurrentPageIndex property must be
         // updated programmatically. This process is usually accomplished
         // in the event-handling method for the PageIndexChanged event.

         // Set CurrentPageIndex to the page the user clicked.
         ItemsGrid.CurrentPageIndex = e.NewPageIndex;

         // Rebind the data to refresh the DataGrid control. 
         ItemsGrid.DataSource = CreateDataSource();
         ItemsGrid.DataBind();

      }

   </script>

<head runat="server">
    <title>DataGrid PagerStyle Example</title>
</head>
<body>

   <form id="form1" runat="server">

      <h3>DataGrid PagerStyle Example</h3>

      Select a background color for the paging controls section 
      of the DataGrid control.

      <br /><br />

      <b>Product List</b>

      <asp:DataGrid id="ItemsGrid"
           BorderColor="black"
           BorderWidth="1"
           CellPadding="3"
           AutoGenerateColumns="False"
           PageSize="10"
           AllowPaging="True"
           OnPageIndexChanged="Grid_Change"
           runat="server">

         <HeaderStyle BackColor="#00aaaa">
         </HeaderStyle>

         <Columns>

            <asp:BoundColumn DataField="IntegerValue" 
                 SortExpression="IntegerValue"
                 HeaderText="Item"/>

            <asp:BoundColumn DataField="StringValue"
                 SortExpression="StringValue" 
                 HeaderText="Description"/>

            <asp:BoundColumn DataField="CurrencyValue" 
                 HeaderText="Price"
                 SortExpression="CurrencyValue"
                 DataFormatString="{0:c}">

               <ItemStyle HorizontalAlign="Right">
               </ItemStyle>

            </asp:BoundColumn>

         </Columns> 

      </asp:DataGrid>

      <hr />

      <table cellpadding="5">

         <tr>

            <td>

               BackColor:

            </td>

         </tr>

         <tr>

            <td>

               <asp:DropDownList id="List"
                    AutoPostBack="True"
                    OnSelectedIndexChanged="Selection_Change"
                    runat="server">

                  <asp:ListItem Selected="True" Value="White"> White </asp:ListItem>
                  <asp:ListItem Value="Silver"> Silver </asp:ListItem>
                  <asp:ListItem Value="DarkGray"> Dark Gray </asp:ListItem>
                  <asp:ListItem Value="Khaki"> Khaki </asp:ListItem>
                  <asp:ListItem Value="DarkKhaki"> Dark Khaki </asp:ListItem>

               </asp:DropDownList>

            </td>

         </tr>

      </table>

   </form>

</body>
</html>

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1
Show:
© 2015 Microsoft