Click here to Skip to main content
15,868,340 members
Articles / Web Development / CSS
Tip/Trick

Easy Bootstrap Pagination for ASP.NET Gridview

Rate me:
Please Sign up or sign in to vote.
4.80/5 (14 votes)
12 Jan 2019CPOL1 min read 119.7K   1.9K   22   11
Bootstrap pagination for gridview with CSS only

Introduction

This post describes implementing bootstrap pagination for ASP.NET gridview with .table class of bootstrap CSS.

I was recently working with ASP.NET gridview in bootstrap template. Pagination is given in ul li format in bootstrap CSS in .pagination class. But ASP.NET gridview control dynamically takes pagination in a nested table. But after watching closely gridview pagination HTML tags, I found a simple solution.

That is nothing but modifying .table class which we use in gridview. Gridview pagination row is within table and the current page number is kept within span control unlike other page links.

CSS Solutions: Modification of Table Class Not Pagination One

So here is the trick.

Put bootstrap CSS on header.

HTML
<link href="css/bootstrap.css" rel="stylesheet" />

Now, we need to modify pager in gridview write CSS rules for .table table - similar to ul li of .pagination class.

Something like this...

Add extra CSS for .table and nested table in it like below. These properties are taken from .pagination CSS.

C#
/*gridview*/
.table table  tbody  tr  td a ,
.table table  tbody  tr  td  span {
position: relative;
float: left;
padding: 6px 12px;
margin-left: -1px;
line-height: 1.42857143;
color: #337ab7;
text-decoration: none;
background-color: #fff;
border: 1px solid #ddd;
}

.table table > tbody > tr > td > span {
z-index: 3;
color: #fff;
cursor: default;
background-color: #337ab7;
border-color: #337ab7;
}

.table table > tbody > tr > td:first-child > a,
.table table > tbody > tr > td:first-child > span {
margin-left: 0;
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
}

.table table > tbody > tr > td:last-child > a,
.table table > tbody > tr > td:last-child > span {
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
}

.table table > tbody > tr > td > a:hover,
.table   table > tbody > tr > td > span:hover,
.table table > tbody > tr > td > a:focus,
.table table > tbody > tr > td > span:focus {
z-index: 2;
color: #23527c;
background-color: #eee;
border-color: #ddd;
}
/*end gridview */

Your gridview pagination class is ready.

Now, put this class in gridview like this:

C#
<asp:GridView ID="GridView1"
CssClass="table table-striped table-bordered table-hover"
   runat="server" PageSize="10"
   AllowPaging="true" ></asp:GridView>

Now, add this code in page load in code view to databind gridview:

C#
DataTable dt = new DataTable();
           dt.Columns.Add("Sl");
           dt.Columns.Add("data");
           dt.Columns.Add("heading1");
           dt.Columns.Add("heading2");
           for (int i = 0; i < 100; i++)
           {
               dt.Rows.Add(new object[] { i ,123*i, 4567*i , 2*i ,  });
           }

           GridView1.DataSource = dt;
           GridView1.DataBind();

Here is the output shown below:

boostrap Gridview pagination without pager style

 

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer
India India
I am a software developer .I mainly work on asp.net webform and SQLServer.But I have also done few projects using PHP , Mysql.

Comments and Discussions

 
QuestionImplementing Pagination Intervals Pin
Member 151322322-Apr-21 3:45
Member 151322322-Apr-21 3:45 
Suggestionmy vote of 5 Pin
Vladimir Emelyanov13-Apr-18 5:45
Vladimir Emelyanov13-Apr-18 5:45 
QuestionWhere's the PageIndexChanging event? Pin
Member 1141014820-Nov-17 11:32
Member 1141014820-Nov-17 11:32 
QuestionGreat but does it keep the Height of the GV the same on last page? Pin
Fandango6822-Mar-17 17:11
Fandango6822-Mar-17 17:11 
I am trying to find a solution that allows me to paginate, as normal, but on the last page where there is less number of rows, than the PageCount, to be able to "pad" with empty rows and hence keep the table looking the same size throughout.
AnswerRe: Great but does it keep the Height of the GV the same on last page? Pin
SagSD22-Mar-17 17:55
SagSD22-Mar-17 17:55 
GeneralRe: Great but does it keep the Height of the GV the same on last page? Pin
Fandango6822-Mar-17 18:09
Fandango6822-Mar-17 18:09 
GeneralRe: Great but does it keep the Height of the GV the same on last page? Pin
SagSD22-Mar-17 21:22
SagSD22-Mar-17 21:22 
GeneralRe: Great but does it keep the Height of the GV the same on last page? Pin
Fandango689-May-17 13:18
Fandango689-May-17 13:18 
GeneralMy vote of 4 Pin
jesusalexis16-Mar-16 5:32
jesusalexis16-Mar-16 5:32 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.