Click here to Skip to main content
15,885,546 members
Articles / Web Development

MvcContrib Grid Paging and Searching in ASP.NET MVC3

Rate me:
Please Sign up or sign in to vote.
4.89/5 (24 votes)
4 May 2011CPOL2 min read 222.2K   14.2K   108  
How to implement MvcContrib Grid paging, sorting, filtering and preserving query URL in ASP.NET MVC3
/********************************************
   AUTHOR:  			Erwin Aligam 
   WEBSITE:   			http://www.styleshout.com/
	TEMPLATE NAME:		Envision
   TEMPLATE CODE: 	S-0013
   VERSION:          1.1
	LAST MODIFIED     Nov-14-2007 	
 *******************************************/
 
/********************************************
   HTML ELEMENTS
********************************************/ 

/* Top Elements */
* { margin: 0; padding: 0; outline: 0 }

body {
	background: #CCC;
	font: 70%/1.5em Verdana, Tahoma, arial, sans-serif;
	color: #555; 
	text-align: center;
}

/* links */
a, a:visited {
	text-decoration: none;
	color: #2180BC;

}
a:hover {
	color: #88ac0b;
	text-decoration: underline;
}

/* headers */
h1, h2, h3 {
	font-family: 'Trebuchet MS', Tahoma, Sans-serif;	 		
}
h1 {
	font-size: 150%;	
	font-weight: normal;
	color: #006699;
}
h2 {
	font-size: 140%;
	text-transform: uppercase;
	color: #88ac0b;
}
h3 {
	font-size: 120%;
	color: #666666; 
}

/* images */
img {
	background: #FAFAFA;
   border: 1px solid #E5E5E5;
	padding: 5px;
}
img.float-right {
  margin: 5px 0px 10px 10px;  
}
img.float-left {
  margin: 5px 10px 10px 0px;
}

h1, h2, h3, p {
	padding: 10px;		
	margin: 0;
}
ul, ol {
	margin: 5px 20px;
	padding: 0 20px;
}

code {
  margin: 5px 0;
  padding: 10px;
  text-align: left;
  display: block;
  overflow: auto;  
  font: 500 1em/1.5em 'Lucida Console', 'courier new', monospace ;
  /* white-space: pre; */
  background: #FAFAFA;
  border: 1px solid #f2f2f2;  
}
acronym {
  cursor: help;
  border-bottom: 1px dotted #777;
}
blockquote {
	margin: 10px;
 	padding: 0 0 0 28px;  
    border: 1px solid #f2f2f2; 
  	background: #FAFAFA url(images/quote.gif) no-repeat 5px 5px;    
}

/* start - table */
table {
	border-collapse: collapse;
	margin: 10px;	
}
th strong {
	color: #fff;
}
th {
	background: #FFFFFF;
	height: 29px;
	padding-left: 12px;
	padding-right: 12px;
	color: #FFF;
	text-align: left;
	border-left: 1px solid #B6D59A;
	border-bottom: solid 2px #FFF;
}
tr {
	height: 30px;
}
td {
	padding-left: 11px;
	padding-right: 11px;
	border-left: 1px solid #FFF;
	border-bottom: solid 1px #ffffff;
}
td.header{
	background: #A9D542;
	font-weight: bold;	
}
td.content{
	background: #EDFDCE;
}
td.first,th.first {
	border-left: 0px;
}
tr.row-a {
	background: #F8F8F8;
}
tr.row-b {
	background: #EFEFEF;
}
/* end - table */

/* form elements */
form {
	margin:10px; padding: 0 5px;
	border: 1px solid #f2f2f2; 
	background-color: #FAFAFA; 	
}
label {
	display:block;
	font-weight:bold;
	margin:5px 0;
}
input {
	padding:2px;
	border:1px solid #eee;
	font: normal 1em Verdana, sans-serif;
	color:#777;
}
select 
{
    padding:2px;
	font: normal 1em Verdana, sans-serif;    
}
textarea {
	width:400px;
	padding:2px;
	font: normal 1em Verdana, sans-serif;
	border:1px solid #eee;
	height:100px;
	display:block;
	color:#777;
}
input.button { 
	font: bold 12px Arial, Sans-serif; 
	height: 24px;
	margin: 0;
	padding: 2px 3px; 
	color: #FFF;
	background: #8EB50C url(images/button-bg.jpg) repeat-x 0 0;
	border: none;
}

/* search form */
.searchform {
	background-color: transparent;
	border: none;	
	margin: 0; padding: 5px 0 15px 0;	
	width: 190px;	
}
.searchform p { margin: 0; padding: 0; }
.searchform input.textbox { 
	width: 120px;
	color: #777; 
	height: 18px;
	padding: 2px;	
	border: 1px solid #E5E5E5;
	vertical-align: top;
}
.searchform input.button { 
	width: 60px;
	height: 24px;
	padding: 2px 5px;
	vertical-align: top;
}

/********************************************
   LAYOUT
********************************************/ 
#wrap {
	width: 820px;
	background: #CCC url(images/content.jpg) repeat-y center top;
	margin: 0 auto;
	text-align: left;
}
#content-wrap {
	clear: both;
	width: 760px;
	padding: 0; 
	margin: 10px auto;
}
#header {
	width: 820px;
	position: relative;
	height: 103px;
	background: #CCC url(images/header.jpg) no-repeat center top;
	padding: 0;	
	color: #FFF;	
}
#header h1#logo-text a {
	position: absolute;
	margin: 0; padding: 0;
	font: bolder 44px 'Trebuchet MS', Arial, Sans-serif;
	letter-spacing: -2px;
	color: #FFF;
	text-transform: none;
	text-decoration: none;
	background: transparent;
	
	/* change the values of top and left to adjust the position of the logo*/
	top: 25px; left: 47px;	
}
#header p#slogan {
	position: absolute;
	margin: 0; padding: 0;
	font: normal 14px 'Trebuchet MS', Arial, Sans-serif;
	text-transform: none;
	color: #FFF;
	
	/* change the values of top and left to adjust the position of the slogan*/
	top: 70px; left: 55px;		
}
#header p#slogan a{
	color: #EFF797;
}

/* header links */
#header #header-links {
	position: absolute;
	top: 20px; right: 30px;	
	color: #C6DDEE;
	font-size: 10px;	
}
#header #header-links a {	
	color: #FFF;
	text-decoration: none;	
}
#header #header-links a:hover {
	color: #D4E59F;	
}

/* Menu */
#menu {
	clear: both;	
	margin: 0 auto; padding: 0;
	background: url(images/menu.jpg) repeat-x 0 0;	
	font: bold 12px/37px Verdana, Arial, Tahoma, Sans-serif;
	height: 37px;
	width: 780px;	
}
#menu ul {
	list-style: none;
	margin:0; 
	padding:0,0,0,50;
}
#menu ul li {
	display: inline;
}
#menu ul li a {
	display: block;
	float: left;
	padding: 0 12px;
	color: #FFF;	
	text-decoration: none;
}
#menu ul li a:hover {
	color: #D4E59F;	
}
#menu ul li.selected a {	
	color: #084B8A;	
	background-color: #CEE3F6;
	margin: 30;
}

/* Main Column */
#main {
	float: left;
	width: 70%;
	padding: 0; margin: 5px 0 0 5px;
	display: inline;
}
#main h2 {
	margin-top: 10px;
	font: Bold 140% 'Trebuchet MS', Tahoma, Sans-serif;
	color: #88ac0b; 
	padding: 5px 0 5px 25px; 	
	border-bottom: 1px solid #EFF0F1;
	background: #FFF url(images/square-green.png) no-repeat 3px 50%;	
	text-transform: none;
}
#main h2 a {
	background: none;
	color: #88ac0b;
	text-decoration: none;
}

#main ul li {
	list-style-image: url(images/bullet.gif);
}

.post-footer {
	background-color: #FAFAFA;
	padding: 5px; margin: 20px 10px 10px 10px;
	border: 1px solid #f2f2f2;
	font-size: 95%;	
}
.post-footer .date {
	background: url(images/clock.gif) no-repeat left center;
	padding-left: 20px; margin: 0 10px 0 5px;
}
.post-footer .comments {
	background: url(images/comment.gif) no-repeat left center;
	padding-left: 20px; margin: 0 10px 0 5px;
}
.post-footer .readmore {
	background: url(images/page.gif) no-repeat left center;
	padding-left: 20px; margin: 0 10px 0 5px;
}

/* Sidebar */	
#sidebar {
	float: right;
	width: 26.5%;
	padding: 0; margin: 0;	
	color: #68774A;	
}	
#sidebar h3 {
	margin-top: 10px;
	padding: 5px 5px; 
	font: bold 1.4em 'Trebuchet MS', Tahoma, Sans-serif;
	color: #728D26;	
}
#sidebar ul.sidemenu {
	list-style: none;
	text-align: left;
	margin: 7px 4px 8px 0; padding: 0;
	text-decoration: none;		
	background: url(images/dots.jpg) repeat-x left top;
}
#sidebar ul.sidemenu li {
	list-style: none;
	background: url(images/dots.jpg) repeat-x left bottom;
	padding: 4px 0 4px 5px;
	margin: 0 2px;	
	color: #68774A;	
}
* html body #sidebar ul.sidemenu li {
	height: 1%;
}
#sidebar ul.sidemenu li a {
	text-decoration: none;	
	background-image: none;	
	color: #666666;			
}
#sidebar ul.sidemenu li a:hover {	
	color: #1773BC;	
}
#sidebar ul.sidemenu ul { margin: 0 0 0 5px; padding: 0; }
#sidebar ul.sidemenu ul li { background: none; }


/* Footer */	
#footer {
	color: #C6DDEE;
	background: #CCC url(images/footer.jpg) no-repeat center top;
	clear: both;
	width: 820px;
	height: 65px;
	text-align: center;	
	font-size: 92%;	
}
#footer a { 
	color: #FFF;
	text-decoration: none; 
}

/* alignment classes */
.float-left  { float: left; }
.float-right { float: right; }
.align-left  { text-align: left; }
.align-right { text-align: right; }

/* display and additional classes */
.clear { clear: both; }

/********************************************
   MvcContrib Grid Style
********************************************/ 

.grid-style th
{
    border-bottom: 5px solid #8EB50C;
    background-color: #EDFDCE;
}

.grid-style .sort_asc
{
    background-image: url('images/arrow_down.png');
    background-repeat: no-repeat;
    background-position: left;
    padding-left: 20px;
}

.grid-style .sort_desc
{
    background-image: url('images/arrow_up.png');
    background-repeat: no-repeat;
    background-position: left;
    padding-left: 20px;   
}

.grid-style .gridrow_alternate
{
    background-color: #eee;
}

.pagination
{
    border: 1px solid #8EB50C;
    padding: 5px;
    background-color: #EDFDCE;
    margin: 10px;
}

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

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


Written By
Software Developer (Senior)
Australia Australia
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions