Pages

Monday, 26 March 2012

How to Use Pager Template in Grid View


Design code: First Take grid view in page

<asp:GridView ID="GridView1" runat="server" AllowPaging="True" OnPageIndexChanging="GridView1_PageIndexChanging"
        OnDataBound="GridView1_DataBound" AutoGenerateColumns="False" DataKeyNames="CustomerID"
        DataSourceID="SqlDataSource1">
        <Columns>
            <asp:BoundField DataField="CustomerID" HeaderText="CustomerID" ReadOnly="True" SortExpression="CustomerID" />
            <asp:BoundField DataField="CompanyName" HeaderText="CompanyName" SortExpression="CompanyName" />
            <asp:BoundField DataField="ContactName" HeaderText="ContactName" SortExpression="ContactName" />
           <asp:BoundField DataField="ContactTitle" HeaderText="ContactTitle" SortExpression="ContactTitle" />
            <asp:BoundField DataField="Address" HeaderText="Address" SortExpression="Address" />
            <asp:BoundField DataField="City" HeaderText="City" SortExpression="City" />
        </Columns>
        <PagerTemplate>
            <table width="100%">
                <tr>
                    <td style="text-align: right">
                        <asp:PlaceHolder ID="PlaceHolder1" runat="server" />
                    </td>
                </tr>
            </table>
        </PagerTemplate>
    </asp:GridView>

After taking the grid view goto Code Follow this code.
C#

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{          
      GridView1.PageIndex = e.NewPageIndex;                    
}

protected void GridView1_DataBound(object sender, EventArgs e)
{
      SetPaging();
}

private void SetPaging()
{
      GridViewRow row = GridView1.BottomPagerRow;
      int alphaStart = 65;
         
      for (int i = 1; i < GridView1.PageCount; i++)
      {              
            LinkButton btn = new LinkButton();
            btn.CommandName = "Page";
            btn.CommandArgument = i.ToString();

            if (i == GridView1.PageIndex + 1)
            {
                  btn.BackColor = Color.BlanchedAlmond;
            }

            btn.Text = Convert.ToChar(alphaStart).ToString();
            btn.ToolTip = "Page " + i.ToString();
            alphaStart++;
PlaceHolder place = row.FindControl("PlaceHolder1") as PlaceHolder;
            place.Controls.Add(btn);

            Label lbl = new Label();
            lbl.Text = " ";
            place.Controls.Add(lbl);
      }
}
-----------------------------sriraj----------------------

No comments:

Post a Comment